/* * © Copyright FOCONIS AG, 2014 * * 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. * */ package org.openntf.formula; import java.util.Comparator; import java.util.Date; import com.ibm.icu.util.Calendar; /** * This is the DateTime interface that is used in formulas. It is very similar to the org.opennft.domino.DateTime interface but this has no * dependency to the lotus API, so that the formula engine can be used in a non-notes environmment. */ public interface DateTime extends Comparator<DateTime> { public abstract void adjustDay(final int n); public abstract void adjustHour(final int n); public abstract void adjustMinute(final int n); public abstract void adjustMonth(final int n); public abstract void adjustSecond(final int n); public abstract void adjustYear(final int n); public abstract void convertToZone(final int zone, final boolean isDST); public abstract String getDateOnly(); public abstract String getLocalTime(); public abstract String getTimeOnly(); public abstract int getTimeZone(); public abstract String getZoneTime(); public abstract boolean isAnyDate(); public abstract boolean isAnyTime(); public abstract boolean isDST(); public abstract void setAnyDate(); public abstract void setAnyTime(); public abstract void setLocalDate(final int year, final int month, final int day); public abstract void setLocalTime(final java.util.Calendar calendar); public abstract void setLocalTime(final Date date); public abstract void setLocalTime(final int hour, final int minute, final int second, final int hundredth); public abstract void setLocalTime(final String time); public abstract void setLocalTime(String time, boolean parseLenient); public abstract void setNow(); public abstract int timeDifference(final DateTime dt); public abstract double timeDifferenceDouble(final DateTime dt); public abstract Date toJavaDate(); public abstract Calendar toJavaCal(); }