/** * The contents of this file are subject to the license and copyright * detailed in the LICENSE and NOTICE files at the root of the source * tree and available online at * * http://www.dspace.org/license/ */ package org.dspace.xmlworkflow.storedcomponents; import org.dspace.content.Collection; import org.dspace.core.Context; import org.dspace.core.ReloadableEntity; import org.dspace.eperson.Group; import javax.persistence.*; import java.sql.SQLException; /** /* * Represents a workflow assignments database representation. * These assignments describe roles and the groups connected * to these roles for each collection * * @author Bram De Schouwer (bram.deschouwer at dot com) * @author Kevin Van de Velde (kevin at atmire dot com) * @author Ben Bosman (ben at atmire dot com) * @author Mark Diggory (markd at atmire dot com) */ @Entity @Table(name="cwf_collectionrole") public class CollectionRole implements ReloadableEntity<Integer> { @Id @Column(name="collectionrole_id") @GeneratedValue(strategy = GenerationType.SEQUENCE ,generator="cwf_collectionrole_seq") @SequenceGenerator(name="cwf_collectionrole_seq", sequenceName="cwf_collectionrole_seq", allocationSize = 1) private Integer id; // @Column(name = "role_id") // @Lob @Column(name="role_id", columnDefinition = "text") private String roleId; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "collection_id") private Collection collection; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "group_id") private Group group; /** * Protected constructor, create object using: * {@link org.dspace.xmlworkflow.storedcomponents.service.CollectionRoleService#create(Context, Collection, String, Group)} * */ protected CollectionRole() { } public void setRoleId(String id){ this.roleId = id; } public String getRoleId(){ return roleId; } public void setCollection(Collection collection){ this.collection = collection; } public Collection getCollection(){ return collection; } public void setGroup(Group group){ this.group = group; } public Group getGroup() throws SQLException { return group; } public Integer getID() { return id; } }