Class: GitObjectBrowser::Models::GitDate
- Inherits:
-
Object
- Object
- GitObjectBrowser::Models::GitDate
- Defined in:
- lib/git-object-browser/models/git_date.rb
Instance Attribute Summary collapse
-
#date ⇒ Object
readonly
Returns the value of attribute date.
-
#timezone ⇒ Object
readonly
Returns the value of attribute timezone.
-
#unixtime ⇒ Object
readonly
Returns the value of attribute unixtime.
Instance Method Summary collapse
-
#initialize(unixtime, timezone) ⇒ GitDate
constructor
A new instance of GitDate.
- #parse_timezone(timezone) ⇒ Object
- #to_s ⇒ Object
Constructor Details
#initialize(unixtime, timezone) ⇒ GitDate
Returns a new instance of GitDate.
9 10 11 12 13 |
# File 'lib/git-object-browser/models/git_date.rb', line 9 def initialize(unixtime, timezone) @unixtime = unixtime @timezone = timezone @date = DateTime.strptime(unixtime.to_s, '%s').new_offset(parse_timezone(timezone)) end |
Instance Attribute Details
#date ⇒ Object (readonly)
Returns the value of attribute date.
7 8 9 |
# File 'lib/git-object-browser/models/git_date.rb', line 7 def date @date end |
#timezone ⇒ Object (readonly)
Returns the value of attribute timezone.
7 8 9 |
# File 'lib/git-object-browser/models/git_date.rb', line 7 def timezone @timezone end |
#unixtime ⇒ Object (readonly)
Returns the value of attribute unixtime.
7 8 9 |
# File 'lib/git-object-browser/models/git_date.rb', line 7 def unixtime @unixtime end |
Instance Method Details
#parse_timezone(timezone) ⇒ Object
15 16 17 18 19 |
# File 'lib/git-object-browser/models/git_date.rb', line 15 def parse_timezone(timezone) timezone = '+00:00' if timezone == 'Z' return Rational(0, 24) unless timezone =~ /(\+|-)?(\d\d):?(\d\d)/ Rational($2.to_i, 24) + Rational($3, 60) * (($1 == '-') ? -1 : 1) end |
#to_s ⇒ Object
21 22 23 |
# File 'lib/git-object-browser/models/git_date.rb', line 21 def to_s @date.iso8601 end |