Class: XMLRPC::DateTime (Ruby 2.7.5)
Description: Class : XMLRPC::DateTime - Ruby 2.7.5

### Home Classes Methods

### In Files

- xmlrpc-0.3.0/lib/xmlrpc/datetime.rb

### Parent

Object

### Methods

- ::new
- #==
- #day=
- #hour=
- #min=
- #mon=
- #month=
- #sec=
- #to_a
- #to_date
- #to_time
- #year=

### Class/Module Index

Quicksearch

- XMLRPC
- XMLRPC::Base64
- XMLRPC::BasicServer
- XMLRPC::CGIServer
- XMLRPC::Client
- XMLRPC::Client::Proxy
- XMLRPC::Config
- XMLRPC::Convert
- XMLRPC::Create
- XMLRPC::DateTime
- XMLRPC::FaultException
- XMLRPC::Marshal
- XMLRPC::Marshallable
- XMLRPC::ModRubyServer
- XMLRPC::ParseContentType
- XMLRPC::ParserWriterChooseMixin
- XMLRPC::Server
- XMLRPC::Service
- XMLRPC::Service::BasicInterface
- XMLRPC::Service::Interface
- XMLRPC::Service::PublicInstanceMethodsInterface
- XMLRPC::WEBrickServlet
- XMLRPC::XMLParser
- XMLRPC::XMLParser::AbstractStreamParser
- XMLRPC::XMLParser::AbstractTreeParser
- XMLRPC::XMLParser::LibXMLStreamParser
- XMLRPC::XMLParser::LibXMLStreamParser::LibXMLStreamListener
- XMLRPC::XMLParser::REXMLStreamParser
- XMLRPC::XMLParser::REXMLStreamParser::StreamListener
- XMLRPC::XMLParser::StreamParserMixin
- XMLRPC::XMLWriter
- XMLRPC::XMLWriter::Abstract
- XMLRPC::XMLWriter::Simple
- XMLRPC::XMLWriter::XMLParser

No matching classes.

# XMLRPC::DateTime

This class is important to handle `XMLRPC` `dateTime.iso8601` values, correctly, because normal UNIX-dates, ie: Date, only handle dates from year 1970 on, and ruby's native Time class handles dates without the time component.

`XMLRPC::DateTime` is able to store a `XMLRPC` `dateTime.iso8601` value correctly.

### Attributes

day[R]

Return the value of the specified date/time component.

hour[R]

Return the value of the specified date/time component.

min[R]

Return the value of the specified date/time component.

mon[R]

Return the value of the specified date/time component.

month[R]

Return the value of the specified date/time component.

sec[R]

Return the value of the specified date/time component.

year[R]

Return the value of the specified date/time component.

### Public Class Methods

new(year, month, day, hour, min, sec) click to toggle source

Creates a new `XMLRPC::DateTime` instance with the parameters `year`, `month`, `day` as date and `hour`, `min`, `sec` as time.

Raises an ArgumentError if a parameter is out of range, or if `year` is not of the Integer type.

                   # File xmlrpc-0.3.0/lib/xmlrpc/datetime.rb, line 84
    def initialize(year, month, day, hour, min, sec)
      self.year, self.month, self.day = year, month, day
      self.hour, self.min, self.sec   = hour, min, sec
    end

### Public Instance Methods

==(o) click to toggle source

Returns whether or not all date/time components are an array.

                   # File xmlrpc-0.3.0/lib/xmlrpc/datetime.rb, line 111
    def ==(o)
      self.to_a == Array(o) rescue false
    end

day=(value) click to toggle source

Set `value` as the new date/time component.

Raises an ArgumentError if the given `value` isn't between 1 and 31.

                   # File xmlrpc-0.3.0/lib/xmlrpc/datetime.rb, line 43
    def day=(value)
      raise ArgumentError, "date/time out of range" unless (1..31).include? value
      @day = value
    end

hour=(value) click to toggle source

Set `value` as the new date/time component.

Raises an ArgumentError if the given `value` isn't between 0 and 24.

                   # File xmlrpc-0.3.0/lib/xmlrpc/datetime.rb, line 51
    def hour=(value)
      raise ArgumentError, "date/time out of range" unless (0..24).include? value
      @hour = value
    end

min=(value) click to toggle source

Set `value` as the new date/time component.

Raises an ArgumentError if the given `value` isn't between 0 and 59.

                   # File xmlrpc-0.3.0/lib/xmlrpc/datetime.rb, line 59
    def min=(value)
      raise ArgumentError, "date/time out of range" unless (0..59).include? value
      @min = value
    end

mon=(value) click to toggle source

Alias for `XMLRPC::DateTime#month=`.

Alias for: month=
month=(value) click to toggle source

Set `value` as the new date/time component.

Raises an ArgumentError if the given `value` isn't between 1 and 12.

                   # File xmlrpc-0.3.0/lib/xmlrpc/datetime.rb, line 35
    def month=(value)
      raise ArgumentError, "date/time out of range" unless (1..12).include? value
      @month = value
    end

Also aliased as: mon=
sec=(value) click to toggle source

Set `value` as the new date/time component.

Raises an ArgumentError if the given `value` isn't between 0 and 59.

                   # File xmlrpc-0.3.0/lib/xmlrpc/datetime.rb, line 67
    def sec=(value)
      raise ArgumentError, "date/time out of range" unless (0..59).include? value
      @sec = value
    end

to_a() click to toggle source

Returns all date/time components in an array.

Returns +[year, month, day, hour, min, sec]+.

                   # File xmlrpc-0.3.0/lib/xmlrpc/datetime.rb, line 106
    def to_a
      [@year, @month, @day, @hour, @min, @sec]
    end

to_date() click to toggle source

Return a Date object of the date which represents `self`.

The Date object do not contain the time component (only date).

                   # File xmlrpc-0.3.0/lib/xmlrpc/datetime.rb, line 99
    def to_date
      Date.new(*to_a[0,3])
    end

to_time() click to toggle source

Return a Time object of the date/time which represents `self`.

The timezone used is GMT.

                   # File xmlrpc-0.3.0/lib/xmlrpc/datetime.rb, line 92
    def to_time
      Time.gm(*to_a)
    end

year=(value) click to toggle source

Set `value` as the new date/time component.

Raises ArgumentError if the given `value` is out of range, or in the case of `XMLRPC::DateTime#year=` if `value` is not of type Integer.

                   # File xmlrpc-0.3.0/lib/xmlrpc/datetime.rb, line 27
    def year=(value)
      raise ArgumentError, "date/time out of range" unless value.is_a? Integer
      @year = value
    end