org.bonitasoft.engine.scheduler.model.SJobParameter Maven / Gradle / Ivy
/**
* Copyright (C) 2019 Bonitasoft S.A.
* Bonitasoft, 32 rue Gustave Eiffel - 38000 Grenoble
* 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
* version 2.1 of the License.
* 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
* program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
* Floor, Boston, MA 02110-1301, USA.
**/
package org.bonitasoft.engine.scheduler.model;
import java.io.Serializable;
import javax.persistence.Cacheable;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.IdClass;
import javax.persistence.Table;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.bonitasoft.engine.persistence.PersistentObject;
import org.bonitasoft.engine.persistence.PersistentObjectId;
import org.hibernate.annotations.Filter;
import org.hibernate.annotations.Type;
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
@Entity
@IdClass(PersistentObjectId.class)
@Filter(name = "tenantFilter")
@Table(name = "job_param")
@Cacheable(false)
public class SJobParameter implements PersistentObject {
public static final String JOB_DESCRIPTOR_ID = "jobDescriptorId";
public static final String KEY = "key";
public static final String VALUE = "value";
@Id
private long id;
@Id
private long tenantId;
private long jobDescriptorId;
@Column(name = "key_")
private String key;
@Column(name = "value_")
@Type(type = "serializable")
private Serializable value;
public SJobParameter(final String key, final Serializable value) {
this.key = key;
this.value = value;
}
}