/* See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * Esri Inc. licenses this file to You 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 com.esri.gpt.catalog.schema.indexable.tp; /** * Represents the boundaries of a time period interval. * <p/> * Boundaries are milliseconds since the epoch * (January 1, 1970, 00:00:00 GMT). * <p/> * Indeterminate: unknown now now.lower now.upper */ public class TpInterval { /** instance variables ====================================================== */ private String indeterminate; private Long lower; private Long upper; /** constructors ============================================================ */ /** Default constructor. */ public TpInterval() {} /** * Construct with a lower and upper bound. * @param lower the lower boundary * @param upper the upper boundary */ public TpInterval(Long lower, Long upper) { this(lower,upper,null); } /** * Construct with a lower and upper bound. * @param lower the lower boundary * @param upper the upper boundary * @param indeterminate the indeterminate */ public TpInterval(Long lower, Long upper, String indeterminate) { this.setLower(lower); this.setUpper(upper); this.setIndeterminate(indeterminate); } /** properties ============================================================== */ /** * Gets the predicate for an indeterminate interval. * <br/>unknown now now.lower now.upper * @return the indeterminate predicate (null if not set) */ public String getIndeterminate() { return this.indeterminate; } /** * Sets the predicate for an indeterminate interval. * <br/>unknown now now.lower now.upper * @param indeterminate the indeterminate predicate (null if not set) */ public void setIndeterminate(String indeterminate) { this.indeterminate = indeterminate; } /** * Gets the lower boundary. * @return the lower boundary */ public Long getLower() { return this.lower; } /** * Sets the lower boundary. * @param lower the lower boundary */ public void setLower(Long lower) { this.lower = lower; } /** * Gets the upper boundary. * @return the upper boundary */ public Long getUpper() { return this.upper; } /** * Sets the upper boundary. * @param upper the upper boundary */ public void setUpper(Long upper) { this.upper = upper; } }