
de.tsl2.nano.service.feature.Feature Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of tsl2.nano.serviceaccess Show documentation
Show all versions of tsl2.nano.serviceaccess Show documentation
TSL2 JEE Service Access (Generic Services for Entity Access, JEE File-System-Connector, Generic Featuring, Job-Scheduling, BeanContainer, Batch, Comfortable Bean Query Definitions, JAAS, Authentification, Authorization, )
The newest version!
/*
* File: $HeadURL$
* Id : $Id$
*
* created by: Thomas Schneider, Thomas Schneider
* created on: Jun 2, 2010
*
* Copyright: (c) Thomas Schneider 2010, all rights reserved
*/
package de.tsl2.nano.service.feature;
import java.io.Serializable;
import java.security.Principal;
/**
* application feature principal
*
* @author Thomas Schneider, Thomas Schneider
* @version $Revision$
*/
public class Feature implements Principal, Serializable {
/** serialVersionUID */
private static final long serialVersionUID = -1507906479689581952L;
/** serialVersionUID */
String name;
/**
* constructor
*
* @param name role name
*/
public Feature(String name) {
assert name != null : "name must not be null";
this.name = name;
}
/**
* {@inheritDoc}
*/
@Override
public String getName() {
return name;
}
/**
* Return a string representation of this Principal
.
*
* @return a string representation of this Principal
.
*/
@Override
public String toString() {
return ("Feature: " + name);
}
/**
* Compares the specified Object with this Principal
for equality. Returns true if the given object is
* also a Principal
and the two Principals have the same username.
*
* @param o Object to be compared for equality with this Principal
.
*
* @return true if the specified Object is equal equal to this Principal
.
*/
@Override
public boolean equals(Object o) {
if (o == null) {
return false;
}
if (this == o) {
return true;
}
if (!(o instanceof Feature)) {
return false;
}
final Feature that = (Feature) o;
if (this.getName().equals(that.getName())) {
return true;
}
return false;
}
/**
* Return a hash code for this Principal
.
*
* @return a hash code for this Principal
.
*/
@Override
public int hashCode() {
return name.hashCode();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy