/**
* Licensed to JumpMind Inc under one or more contributor
* license agreements. See the NOTICE file distributed
* with this work for additional information regarding
* copyright ownership. JumpMind Inc licenses this file
* to you under the GNU General Public License, version 3.0 (GPLv3)
* (the "License"); you may not use this file except in compliance
* with the License.
*
* You should have received a copy of the GNU General Public License,
* version 3.0 (GPLv3) along with this library; if not, see
* <http://www.gnu.org/licenses/>.
*
* 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.jumpmind.symmetric.model;
import java.io.Serializable;
import java.util.Date;
public class FileTriggerRouter implements Serializable {
private static final long serialVersionUID = 1L;
private FileTrigger fileTrigger;
private Router router;
private boolean enabled = true;
private boolean initialLoadEnabled;
private String targetBaseDir;
private FileConflictStrategy conflictStrategy = FileConflictStrategy.SOURCE_WINS;
private Date createTime = new Date();
private String lastUpdateBy;
private Date lastUpdateTime;
public FileTriggerRouter(FileTrigger fileTrigger, Router router) {
this.fileTrigger = fileTrigger;
this.router = router;
}
public FileTriggerRouter() {
}
public void setFileTrigger(FileTrigger fileTrigger) {
this.fileTrigger = fileTrigger;
}
public FileTrigger getFileTrigger() {
return fileTrigger;
}
public void setRouter(Router router) {
this.router = router;
}
public Router getRouter() {
return router;
}
public boolean isEnabled() {
return enabled;
}
public void setEnabled(boolean enabled) {
this.enabled = enabled;
}
public void setInitialLoadEnabled(boolean initialLoadEnabled) {
this.initialLoadEnabled = initialLoadEnabled;
}
public boolean isInitialLoadEnabled() {
return initialLoadEnabled;
}
public String getTargetBaseDir() {
return targetBaseDir;
}
public void setTargetBaseDir(String targetBaseDir) {
this.targetBaseDir = targetBaseDir;
}
public FileConflictStrategy getConflictStrategy() {
return conflictStrategy;
}
public void setConflictStrategy(FileConflictStrategy conflictStrategy) {
this.conflictStrategy = conflictStrategy;
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
public String getLastUpdateBy() {
return lastUpdateBy;
}
public void setLastUpdateBy(String lastUpdateBy) {
this.lastUpdateBy = lastUpdateBy;
}
public Date getLastUpdateTime() {
return lastUpdateTime;
}
public void setLastUpdateTime(Date lastUpdateTime) {
this.lastUpdateTime = lastUpdateTime;
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((fileTrigger == null) ? 0 : fileTrigger.hashCode());
result = prime * result + ((router == null) ? 0 : router.hashCode());
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
FileTriggerRouter other = (FileTriggerRouter) obj;
if (fileTrigger == null) {
if (other.fileTrigger != null)
return false;
} else if (!fileTrigger.equals(other.fileTrigger))
return false;
if (router == null) {
if (other.router != null)
return false;
} else if (!router.equals(other.router))
return false;
return true;
}
public String getTriggerId() {
return this.fileTrigger != null ? this.fileTrigger.getTriggerId() : null;
}
public String getRouterId() {
return this.router != null ? this.router.getRouterId() : null;
}
public void setTriggerId(String triggerId) {
if (this.fileTrigger == null) {
this.fileTrigger = new FileTrigger();
}
this.fileTrigger.setTriggerId(triggerId);
}
public void setRouterId(String routerId) {
if (this.router == null) {
this.router = new Router();
}
this.router.setRouterId(routerId);
}
}