package edu.asu.spring.quadriga.domain.factories; import edu.asu.spring.quadriga.domain.IQuadrigaRole; /** * @description : Factory interface for Quadriga Role factory * * @author : Kiran Kumar Batna * */ public interface IQuadrigaRoleFactory { /** * Factory method to create a QuadrigaRole object * @return IQuadrigaRole * @author kiran batna */ public abstract IQuadrigaRole createQuadrigaRoleObject(); /** * Method for cloning a {@link IQuadrigaRole} object. Note that this will produce a shallow clone, meaning that the QuadrigaRoles * will simply be put into a new list for the clone, but the QuadrigaRole objects themselves will be the same. * @param QuadrigaRole to be cloned * @return a clone of the given QuadrigaRole object that contains the exact same information as the original object. * @author kiran batna */ public abstract IQuadrigaRole cloneQuadrigaRoleObject(IQuadrigaRole quadrigaRole); }