package eu.dnetlib.contract.cp.comp;

import org.opensaml.saml2.core.Assertion;

/**
 * Simple assertion comparator module.
 * Currently checks Issuer value only.
 * @author mhorst
 *
 */
public class SimpleAssertionComparatorModule implements IComparatorModule<Assertion> {

	/* (non-Javadoc)
	 * @see eu.dnetlib.contract.cp.comp.IComparatorModule#equals(java.lang.Object, java.lang.Object)
	 */
	public boolean equals(Assertion arg1, Assertion arg2) {
		if (arg1.getIssuer()!=null) {
			if (arg2.getIssuer()!=null) {
				return arg1.getIssuer().getValue().equals(
						arg2.getIssuer().getValue());
			} else {
				return false;
			}
		} else {
			if (arg2.getIssuer()==null) {
				return true;
			} else {
				return false;
			}
		}
	}

	/* (non-Javadoc)
	 * @see eu.dnetlib.contract.cp.comp.IComparatorModule#getSupportedClass()
	 */
	public Class<Assertion> getSupportedClass() {
		return Assertion.class;
	}
	
}
