All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.jresearch.ical.values.DateTimeValueImpl Maven / Gradle / Ivy

Go to download

RFC 2445 defines protocols for interoperability between calendar applications, and this library provides java implementations for a number of RFC 2445 primitives including those that describe how events repeat. Start by taking alook at the compat packages.

There is a newer version: 1.0.11
Show newest version
/*
 * Copyright (C) 2006 Google Inc.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 * All Rights Reserved.
 */

package org.jresearch.ical.values;

/**
 * An instant in time.
 *
 * @author Neal Gafter
 */
public class DateTimeValueImpl
    extends DateValueImpl
    implements DateTimeValue {
  private final int hour, minute, second;

  public DateTimeValueImpl(int year, int month, int day,
                           int hour, int minute, int second) {
    super(year, month, day);
    this.hour = hour;
    this.minute = minute;
    this.second = second;
  }

  public int hour() {
    return hour;
  }

  public int minute() {
    return minute;
  }

  public int second() {
    return second;
  }

  @Override
  public int hashCode() {
    return super.hashCode() ^
      ((this.hour << 12) + (this.minute << 6) + this.second);
  }

  @Override
  public String toString() {
    return String.format("%sT%02d%02d%02d",
                         super.toString(),
                         hour, minute, second);
  }
}









© 2015 - 2024 Weber Informatics LLC | Privacy Policy