All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.picketlink.idm.impl.model.jpa.IdentityObjectRelationship Maven / Gradle / Ivy

The newest version!
package org.picketlink.idm.impl.model.jpa;

import java.io.Serializable;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;

import org.picketlink.idm.impl.store.jpa.IdentityProperty;
import org.picketlink.idm.impl.store.jpa.PropertyType;

/**
 * Contains relationships between identities
 * 
 * @author Shane Bryzak
 */
@Entity
public class IdentityObjectRelationship implements Serializable
{
   private static final long serialVersionUID = -5254503795105571898L;
   
   private Long id;
   private String name;
   private IdentityObjectRelationshipType relationshipType;
   private IdentityObject from;
   private IdentityObject to;
   
   @Id @GeneratedValue
   public Long getId()
   {
      return id;
   }
   
   public void setId(Long id)
   {
      this.id = id;
   }
   
   public String getName()
   {
      return name;
   }
   
   public void setName(String name)
   {
      this.name = name;
   }
   
   @ManyToOne @IdentityProperty(PropertyType.TYPE) @JoinColumn(name = "RELATIONSHIP_TYPE_ID")
   public IdentityObjectRelationshipType getRelationshipType()
   {
      return relationshipType;
   }
   
   public void setRelationshipType(IdentityObjectRelationshipType relationshipType)
   {
      this.relationshipType = relationshipType;
   }

   @ManyToOne @IdentityProperty(PropertyType.RELATIONSHIP_FROM) @JoinColumn(name = "FROM_IDENTITY_ID")
   public IdentityObject getFrom()
   {
      return from;
   }
   
   public void setFrom(IdentityObject from)
   {
      this.from = from;
   }

   @ManyToOne @IdentityProperty(PropertyType.RELATIONSHIP_TO) @JoinColumn(name = "TO_IDENTITY_ID")
   public IdentityObject getTo()
   {
      return to;
   }
   
   public void setTo(IdentityObject to)
   {
      this.to = to;
   }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy