| /** |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF 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 org.apache.falcon.persistence; |
| |
| |
| //SUSPEND CHECKSTYLE CHECK LineLengthCheck |
| |
| import javax.persistence.Basic; |
| import javax.persistence.Column; |
| import javax.persistence.Entity; |
| import javax.persistence.FetchType; |
| import javax.persistence.Id; |
| import javax.persistence.Lob; |
| import javax.persistence.NamedQueries; |
| import javax.persistence.NamedQuery; |
| import javax.persistence.Table; |
| import javax.validation.constraints.NotNull; |
| import java.util.Arrays; |
| import java.util.Date; |
| import java.util.List; |
| |
| /** |
| * Table to store extension jobs. |
| */ |
| |
| @Table(name = "EXTENSION_JOBS") |
| @Entity |
| @NamedQueries({ |
| @NamedQuery(name = PersistenceConstants.GET_ALL_EXTENSION_JOBS, query = "select OBJECT(a) from ExtensionJobsBean a "), |
| @NamedQuery(name = PersistenceConstants.DELETE_EXTENSION_JOB, query = "delete from ExtensionJobsBean a where a.jobName = :jobName "), |
| @NamedQuery(name = PersistenceConstants.GET_EXTENSION_JOB, query = "select OBJECT(a) from ExtensionJobsBean a where a.jobName = :jobName"), |
| @NamedQuery(name = PersistenceConstants.GET_JOBS_FOR_AN_EXTENSION, query = "select OBJECT(a) from ExtensionJobsBean a where a.extensionName = :extensionName") |
| }) |
| //RESUME CHECKSTYLE CHECK LineLengthCheck |
| public class ExtensionJobsBean { |
| |
| @Basic |
| @NotNull |
| @Id |
| @Column(name = "job_name") |
| private String jobName; |
| |
| @Basic |
| @NotNull |
| @Column(name = "extension_name") |
| private String extensionName; |
| |
| @Basic |
| @NotNull |
| @Column(name = "feeds") |
| private String[] feeds; |
| |
| @Basic |
| @NotNull |
| @Column(name = "processes") |
| private String[] processes; |
| |
| @Lob |
| @Basic(fetch= FetchType.LAZY) |
| @Column(name = "config") |
| private byte[] config; |
| |
| |
| @Basic |
| @NotNull |
| @Column(name = "creation_time") |
| private Date creationTime; |
| |
| @Basic |
| @NotNull |
| @Column(name = "last_updated_time") |
| private Date lastUpdatedTime; |
| |
| public String getJobName() { |
| return jobName; |
| } |
| |
| public void setJobName(String jobName) { |
| this.jobName = jobName; |
| } |
| |
| public Date getCreationTime() { |
| return creationTime; |
| } |
| |
| public void setCreationTime(Date creationTime) { |
| this.creationTime = creationTime; |
| } |
| |
| public byte[] getConfig() { |
| return config; |
| } |
| |
| public void setConfig(byte[] config) { |
| this.config = config; |
| } |
| |
| public String getExtensionName() { |
| return extensionName; |
| } |
| |
| public void setExtensionName(String extensionName) { |
| this.extensionName = extensionName; |
| } |
| |
| public Date getLastUpdatedTime() { |
| return lastUpdatedTime; |
| } |
| |
| public void setLastUpdatedTime(Date lastUpdatedTime) { |
| this.lastUpdatedTime = lastUpdatedTime; |
| } |
| |
| public List<String> getFeeds() { |
| return Arrays.asList(feeds); |
| } |
| |
| public void setFeeds(List<String> feeds) { |
| this.feeds = feeds.toArray(new String[feeds.size()]); |
| } |
| |
| public List<String> getProcesses() { |
| return Arrays.asList(processes); |
| } |
| |
| public void setProcesses(List<String> processes) { |
| this.processes = processes.toArray(new String[processes.size()]); |
| } |
| } |