/** * * Copyright (c) 2014, the Railo Company Ltd. All rights reserved. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library. If not, see <http://www.gnu.org/licenses/>. * **/ package lucee.runtime.schedule; import java.net.URL; import lucee.commons.io.res.Resource; import lucee.commons.security.Credentials; import lucee.runtime.net.proxy.ProxyData; import lucee.runtime.type.dt.Date; import lucee.runtime.type.dt.Time; /** * a single scheduler task */ public interface ScheduleTask { /** * Field <code>OPERATION_HTTP_REQUEST</code> */ public static final short OPERATION_HTTP_REQUEST = 0; /** * Field <code>INTERVAL_ONCE</code> */ public static final int INTERVAL_ONCE = 0; /** * Field <code>INTERVAL_DAY</code> */ public static final int INTERVAL_DAY = 1; /** * Field <code>INTERVAL_WEEK</code> */ public static final int INTERVAL_WEEK = 2; /** * Field <code>INTERVAL_MONTH</code> */ public static final int INTERVAL_MONTH = 3; /** * @return Returns the credentials. */ public abstract Credentials getCredentials(); /** * @return Returns has credentials. */ public abstract boolean hasCredentials(); /** * @return Returns the file. */ public abstract Resource getResource(); /** * @return Returns the interval. */ public abstract int getInterval(); /** * @return Returns the operation. */ public abstract short getOperation(); /** * @return Returns the proxyHost. */ public abstract ProxyData getProxyData(); /** * @return Returns the resolveURL. */ public abstract boolean isResolveURL(); /** * @return Returns the task. */ public abstract String getTask(); /** * @return Returns the timeout. */ public abstract long getTimeout(); /** * @return Returns the url. */ public abstract URL getUrl(); /** * @param nextExecution */ public abstract void setNextExecution(long nextExecution); /** * @return Returns the nextExecution. */ public abstract long getNextExecution(); /** * @return Returns the endDate. */ public abstract Date getEndDate(); /** * @return Returns the startDate. */ public abstract Date getStartDate(); /** * @return Returns the endTime. */ public abstract Time getEndTime(); /** * @return Returns the startTime. */ public abstract Time getStartTime(); /** * @return returns interval definition as String */ public abstract String getIntervalAsString(); /** * @return Returns the strInterval. */ public abstract String getStringInterval(); /** * @return Returns the publish. */ public abstract boolean isPublish(); /** * @return Returns the valid. */ public abstract boolean isValid(); /** * @param valid The valid to set. */ public abstract void setValid(boolean valid); /** * @return the hidden */ public boolean isHidden(); /** * @param hidden the hidden to set */ public void setHidden(boolean hidden); public boolean isPaused(); }