1// Copyright 2016-2020 The Libsacloud Authors 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15package sacloud 16 17import ( 18 "strconv" 19 "time" 20) 21 22// NewsFeed メンテナンス/障害情報お知らせ 23type NewsFeed struct { 24 StrDate string `json:"date,omitempty"` 25 Description string `json:"desc,omitempty"` 26 StrEventStart string `json:"event_start,omitempty"` 27 StrEventEnd string `json:"event_end,omitempty"` 28 Title string `json:"title,omitempty"` 29 URL string `json:"url,omitempty"` 30} 31 32// Date 対象日時 33func (f *NewsFeed) Date() time.Time { 34 return f.parseTime(f.StrDate) 35} 36 37// EventStart 掲載開始日時 38func (f *NewsFeed) EventStart() time.Time { 39 return f.parseTime(f.StrEventStart) 40} 41 42// EventEnd 掲載終了日時 43func (f *NewsFeed) EventEnd() time.Time { 44 return f.parseTime(f.StrEventEnd) 45} 46 47func (f *NewsFeed) parseTime(sec string) time.Time { 48 s, _ := strconv.ParseInt(sec, 10, 64) 49 return time.Unix(s, 0) 50} 51