/* * Created on Feb 15, 2004 * */ package se.idega.idegaweb.commune.user.presentation; import java.rmi.RemoteException; import se.idega.idegaweb.commune.business.CommuneFamilyService; import com.idega.business.IBOLookup; import com.idega.idegaweb.IWApplicationContext; import com.idega.presentation.IWContext; import com.idega.user.data.User; import is.idega.block.family.business.FamilyLogic; import is.idega.block.family.presentation.FamilyRelationConnector; /** * CommuneFamilyRelationConnector * @author aron * @version 1.0 */ public class CommuneFamilyRelationConnector extends FamilyRelationConnector { /** * */ public CommuneFamilyRelationConnector() { super(); } /* (non-Javadoc) * @see is.idega.idegaweb.member.presentation.FamilyRelationConnector#getMemberFamilyLogic(com.idega.idegaweb.IWApplicationContext) */ protected FamilyLogic getMemberFamilyLogic(IWApplicationContext iwac) throws RemoteException { return (FamilyLogic)IBOLookup.getServiceInstance(iwac,CommuneFamilyService.class); } /* (non-Javadoc) * @see is.idega.idegaweb.member.presentation.UserRelationConnector#isRelationshipLegal(com.idega.presentation.IWContext, com.idega.user.data.User, com.idega.user.data.User, java.lang.String) */ protected boolean isRelationshipLegal(IWContext iwc, User roleUser, User victimUser, String relationType) { try { FamilyLogic familyService = getMemberFamilyLogic(iwc); if(relationType.equalsIgnoreCase(familyService.getCohabitantRelationType())){ return !familyService.isSpouseOf(roleUser,victimUser); } else if(relationType.equalsIgnoreCase(familyService.getSpouseRelationType())){ return !familyService.isCohabitantOf(roleUser,victimUser); } } catch (RemoteException e) { e.printStackTrace(); } return true; } }