package edu.harvard.iq.dataverse.authorization.providers; import edu.harvard.iq.dataverse.authorization.AuthenticationProvider; import java.util.Objects; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.Index; import javax.persistence.Lob; import javax.persistence.NamedQueries; import javax.persistence.NamedQuery; import javax.persistence.Table; /** * Database-storable form of an {@code AuthenticationProvider}. * An instance of this class is translated to an actual {@link AuthenticationProvider} * instance by the {@link AuthenticationProviderFactory} whose alias appears in * {@link #factoryAlias}. * * @author michael */ @NamedQueries({ @NamedQuery( name="AuthenticationProviderRow.findAllEnabled", query="SELECT r FROM AuthenticationProviderRow r WHERE r.enabled=true" ), @NamedQuery( name="AuthenticationProviderRow.findAll", query="SELECT r FROM AuthenticationProviderRow r" ) }) @Entity @Table(indexes = {@Index(columnList="enabled")}) public class AuthenticationProviderRow implements java.io.Serializable { @Id private String id; private String title; private String subtitle; private String factoryAlias; private boolean enabled; @Lob private String factoryData; public String getId() { return id; } public void setId(String id) { this.id = id; } public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public String getSubtitle() { return subtitle; } public void setSubtitle(String subtitle) { this.subtitle = subtitle; } public String getFactoryAlias() { return factoryAlias; } public void setFactoryAlias(String factoryAlias) { this.factoryAlias = factoryAlias; } public String getFactoryData() { return factoryData; } public void setFactoryData(String factoryData) { this.factoryData = factoryData; } public boolean isEnabled() { return enabled; } public void setEnabled(boolean enabled) { this.enabled = enabled; } @Override public int hashCode() { int hash = 7; hash = 53 * hash + Objects.hashCode(this.id); return hash; } @Override public boolean equals(Object obj) { if (obj == null) { return false; } if ( !(obj instanceof AuthenticationProviderRow)) { return false; } final AuthenticationProviderRow other = (AuthenticationProviderRow) obj; return Objects.equals(this.id, other.id); } }