8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster/**
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster *
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster *
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * The contents of this file are subject to the terms
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * of the Common Development and Distribution License
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * (the License). You may not use this file except in
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * compliance with the License.
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster *
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * You can obtain a copy of the License at
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * https://opensso.dev.java.net/public/CDDLv1.0.html or
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * opensso/legal/CDDLv1.0.txt
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * See the License for the specific language governing
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * permission and limitations under the License.
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster *
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * When distributing Covered Code, include this CDDL
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * Header Notice in each file and include the License file
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * at opensso/legal/CDDLv1.0.txt.
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * If applicable, add the following below the CDDL Header,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * with the fields enclosed by brackets [] replaced by
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * your own identifying information:
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * "Portions Copyrighted [year] [name of copyright owner]"
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster *
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * $Id: DirectoryManagerIF.java,v 1.9 2010/01/06 01:58:26 veiming Exp $
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster *
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster */
d5945925e5fd8d1d286fa82f1fda99938dd3cbe2Peter Major/**
d5945925e5fd8d1d286fa82f1fda99938dd3cbe2Peter Major * Portions Copyrighted 2013 ForgeRock, Inc.
d5945925e5fd8d1d286fa82f1fda99938dd3cbe2Peter Major */
8af80418ba1ec431c8027fa9668e5678658d3611Allan Fosterpackage com.iplanet.am.sdk.remote;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Fosterimport java.rmi.Remote;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Fosterimport java.rmi.RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Fosterimport java.util.LinkedList;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Fosterimport java.util.List;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Fosterimport java.util.Map;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Fosterimport java.util.Set;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Fosterimport com.iplanet.sso.SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Fosterimport com.sun.identity.idm.IdRepoException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster/*
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * JAX-RPC interfaces for DirectoryManager to make it remotable
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster */
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Fosterpublic interface DirectoryManagerIF extends Remote {
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster // Get operations..
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public boolean doesEntryExists(String ssoToken, String entryDN)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws AMRemoteException, SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public int getObjectType(String ssoToken, String dn)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws AMRemoteException, SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Map getDCTreeAttributes(String token, String entryDN, Set attrNames,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster boolean byteValues, int objectType) throws AMRemoteException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Map getAttributes1(String token, String entryDN, int profileType)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws AMRemoteException, SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Map getAttributes2(String token, String entryDN, Set attrNames,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster int profileType) throws AMRemoteException, SSOException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Map getAttributesByteValues1(String token, String entryDN,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster int profileType) throws AMRemoteException, SSOException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Map getAttributesByteValues2(String token, String entryDN,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster Set attrNames, int profileType) throws AMRemoteException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Map getAttributes3(String token, String entryDN,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster boolean ignoreCompliance, boolean byteValues, int profileType)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws AMRemoteException, SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Map getAttributes4(String token, String entryDN, Set attrNames,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster boolean ignoreCompliance, boolean byteValues, int profileType)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws AMRemoteException, SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public String getOrgSearchFilter(String entryDN) throws RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public String getOrganizationDN(String token, String entryDN)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws AMRemoteException, RemoteException, SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public String verifyAndGetOrgDN(String token, String entryDN,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String childDN) throws AMRemoteException, RemoteException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Map getExternalAttributes(String token, String entryDN,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster Set attrNames, int profileType) throws AMRemoteException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster // Update/create/delete operations
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public void updateUserAttribute(String token, Set members,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String staticGroupDN, boolean toAdd) throws AMRemoteException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public void createEntry(String token, String entryName, int objectType,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String parentDN, Map attributes) throws AMRemoteException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public void removeEntry(String token, String entryDN, int objectType,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster boolean recursive, boolean softDelete) throws AMRemoteException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public void removeAdminRole(String token, String dn, boolean recursive)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws AMRemoteException, SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster // Search operations
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Set search1(String token, String entryDN, String searchFilter,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster int searchScope) throws AMRemoteException, SSOException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Map search2(String token, String entryDN, String searchFilter,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster List sortKeys, int startIndex, int beforeCount, int afterCount,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String jumpTo, int timeOut, int maxResults, int scope,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster boolean allAttributes, String[] attrNames)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws AMRemoteException, SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Map search3(String token, String entryDN, String searchFilter,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster List sortKeys, int startIndex, int beforeCount, int afterCount,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String jumpTo, int timeOut, int maxResults, int scope,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster boolean allAttributes, Set attrNamesSet) throws AMRemoteException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public void setAttributes(String token, String entryDN, int objectType,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster Map stringAttributes, Map byteAttributes, boolean isAdd)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws AMRemoteException, SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public void changePassword(String token, String entryDN, String attrName,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String oldPassword, String newPassword)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws AMRemoteException, SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster // Role/group operations
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Set getMembers(String token, String entryDN, int objectType)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws AMRemoteException, SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public String renameEntry(String token, int objectType, String entryDN,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String newName, boolean deleteOldName) throws AMRemoteException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public LinkedList getGroupFilterAndScope(String token, String entryDN,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster int profileType) throws AMRemoteException, SSOException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public void setGroupFilter(String token, String entryDN, String filter)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws AMRemoteException, SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public void modifyMemberShip(String token, Set members, String target,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster int type, int operation) throws AMRemoteException, SSOException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster // Services related operations
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Set getRegisteredServiceNames(String token, String entryDN)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws AMRemoteException, SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public void registerService(String token, String orgDN, String serviceName)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws AMRemoteException, SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster // TODO Origingal code passes an AMTemplate object. Need to take care
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster // of that.
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public void unRegisterService(String token, String entryDN, int objectType,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String serviceName, int type) throws AMRemoteException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public String getAMTemplateDN(String token, String entryDN, int objectType,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String serviceName, int type) throws AMRemoteException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public String createAMTemplate(String token, String entryDN,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster int objectType, String serviceName, Map attributes, int priority)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws AMRemoteException, SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public String getNamingAttr(int objectType, String orgDN)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public String getCreationTemplateName(int objectType)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public String getObjectClassFromDS(int objectType) throws RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Set getAttributesForSchema(String objectclass)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public String getSearchFilterFromTemplate(int objectType, String orgDN,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String searchTemplateName) throws RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Set getTopLevelContainers(String token) throws AMRemoteException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster // DCTree related operations
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public String getOrgDNFromDomain(String token, String domain)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws AMRemoteException, SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster // AMCompliance related operations
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public boolean isAncestorOrgDeleted(String token, String dn,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster int profileType) throws AMRemoteException, SSOException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public void verifyAndDeleteObject(String token, String dn)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws AMRemoteException, SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public String getDeletedObjectFilter(int objecttype)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws AMRemoteException, SSOException, RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster // Notification methods
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Set objectsChanged(int time) throws RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public String registerNotificationURL(String url) throws RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public void deRegisterNotificationURL(String notificationID)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public String create_idrepo(String token, String type, String name,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster Map attrMap, String amOrgName) throws RemoteException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster IdRepoException, SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public void delete_idrepo(String token, String type, String name,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String orgName, String amsdkDN) throws RemoteException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster IdRepoException, SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Map getAttributes1_idrepo(String token, String type, String name,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster Set attrNames, String amOrgName, String amsdkDN)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws RemoteException, IdRepoException, SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Map getAttributes2_idrepo(String token, String type, String name,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String amOrgName, String amsdkDN) throws RemoteException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster IdRepoException, SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
d5945925e5fd8d1d286fa82f1fda99938dd3cbe2Peter Major /**
d5945925e5fd8d1d286fa82f1fda99938dd3cbe2Peter Major * Returns attributes in binary format for a given identity using the IdRepo API.
d5945925e5fd8d1d286fa82f1fda99938dd3cbe2Peter Major *
d5945925e5fd8d1d286fa82f1fda99938dd3cbe2Peter Major * @param token Token identifying the requester.
d5945925e5fd8d1d286fa82f1fda99938dd3cbe2Peter Major * @param type The identity type we need to query the attributes for.
d5945925e5fd8d1d286fa82f1fda99938dd3cbe2Peter Major * @param name The name of the identity.
d5945925e5fd8d1d286fa82f1fda99938dd3cbe2Peter Major * @param attrNames The attribute names that needs to be queried.
d5945925e5fd8d1d286fa82f1fda99938dd3cbe2Peter Major * @param amOrgName The realm identifier.
d5945925e5fd8d1d286fa82f1fda99938dd3cbe2Peter Major * @param amsdkDN The AM SDK DN, may be null.
d5945925e5fd8d1d286fa82f1fda99938dd3cbe2Peter Major * @return A map of attribute names and values, where the values are all in Base64 encoded format.
d5945925e5fd8d1d286fa82f1fda99938dd3cbe2Peter Major * @throws RemoteException If there was a communication problem.
d5945925e5fd8d1d286fa82f1fda99938dd3cbe2Peter Major * @throws IdRepoException If there was a problem while retrieving the attributes from the identity repository.
d5945925e5fd8d1d286fa82f1fda99938dd3cbe2Peter Major * @throws SSOException If there was an error with the provided token.
d5945925e5fd8d1d286fa82f1fda99938dd3cbe2Peter Major */
d5945925e5fd8d1d286fa82f1fda99938dd3cbe2Peter Major public Map<String, Set<String>> getBinaryAttributes_idrepo(String token, String type, String name,
d5945925e5fd8d1d286fa82f1fda99938dd3cbe2Peter Major Set<String> attrNames, String amOrgName, String amsdkDN)
d5945925e5fd8d1d286fa82f1fda99938dd3cbe2Peter Major throws RemoteException, IdRepoException, SSOException;
d5945925e5fd8d1d286fa82f1fda99938dd3cbe2Peter Major
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Set getMembers_idrepo(String token, String type, String name,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String amOrgName, String membersType, String amsdkDN)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws RemoteException, IdRepoException, SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Set getMemberships_idrepo(String token, String type, String name,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String membershipType, String amOrgName, String amsdkDN)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws RemoteException, IdRepoException, SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public boolean isExists_idrepo(String token, String type, String name,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String amOrgName) throws RemoteException, SSOException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster IdRepoException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public boolean isActive_idrepo(String token, String type, String name,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String amOrgName, String amsdkDN) throws RemoteException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster IdRepoException, SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public void setActiveStatus_idrepo(String token, String type, String name,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String amOrgName, String amsdkDN, boolean active)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws RemoteException, IdRepoException, SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public void modifyMemberShip_idrepo(String token, String type, String name,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster Set members, String membersType, int operation, String amOrgName)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws RemoteException, IdRepoException, SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public void removeAttributes_idrepo(String token, String type, String name,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster Set attrNames, String amOrgName, String amsdkDN)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws RemoteException, IdRepoException, SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Map search1_idrepo(String token, String type, String pattern,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster Map avPairs, boolean recursive, int maxResults, int maxTime,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster Set returnAttrs, String amOrgName) throws RemoteException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster IdRepoException, SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Map search2_idrepo(String token, String type, String pattern,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster int maxTime, int maxResults, Set returnAttrs,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster boolean returnAllAttrs, int filterOp, Map avPairs,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster boolean recursive, String amOrgName) throws RemoteException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster IdRepoException, SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public void setAttributes_idrepo(String token, String type, String name,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster Map attributes, boolean isAdd, String amOrgName, String amsdkDN)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws RemoteException, IdRepoException, SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public void setAttributes2_idrepo(String token, String type, String name,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster Map attributes, boolean isAdd, String amOrgName, String amsdkDN,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster boolean isString) throws RemoteException, IdRepoException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public void changePassword_idrepo(String token, String type,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String entryDN, String attrName, String oldPassword,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String newPassword, String amsdkDN) throws RemoteException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster IdRepoException, SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Set getAssignedServices_idrepo(String token, String type,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String name, Map mapOfServiceNamesAndOCs, String amOrgName,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String amsdkDN) throws RemoteException, IdRepoException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public void assignService_idrepo(String token, String type, String name,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String serviceName, String stype, Map attrMap, String amOrgName,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String amsdkDN) throws RemoteException, IdRepoException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public void unassignService_idrepo(String token, String type, String name,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String serviceName, Map attrMap, String amOrgName, String amsdkDN)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws RemoteException, IdRepoException, SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Map getServiceAttributes_idrepo(String token, String type,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String name, String serviceName, Set attrNames, String amOrgName,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String amsdkDN) throws RemoteException, IdRepoException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Map getBinaryServiceAttributes_idrepo(String token, String type,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String name, String serviceName, Set attrNames, String amOrgName,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String amsdkDN )
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws RemoteException, IdRepoException, SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster /**
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * Non-javadoc, non-public methods
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * Get the service attributes of the name identity. Traverse to the global
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * configuration if necessary until all attributes are found or reached
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * the global area whichever occurs first.
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster *
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * @param token is the sso token of the person performing this operation.
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * @param type is the identity type of the name parameter.
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * @param name is the identity we are interested in.
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * @param serviceName is the service we are interested in
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * @param attrNames are the name of the attributes wer are interested in.
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * @param amOrgName is the orgname.
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * @param amsdkDN is the amsdkDN.
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * @throws RemoteException if there are problem connecting with remote site.
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * @throws IdRepoException if there are repository related error conditions.
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster * @throws SSOException if user's single sign on token is invalid.
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster */
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Map getServiceAttributesAscending_idrepo(String token, String type,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String name, String serviceName, Set attrNames, String amOrgName,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String amsdkDN )
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws RemoteException, IdRepoException, SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public void modifyService_idrepo(String token, String type, String name,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String serviceName, String stype, Map attrMap, String amOrgName,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String amsdkDN) throws RemoteException, IdRepoException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Set getSupportedTypes_idrepo(String token, String amOrgName)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws RemoteException, IdRepoException, SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Set getSupportedOperations_idrepo(String token, String type,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String amOrgName) throws RemoteException, IdRepoException,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Set getFullyQualifiedNames_idrepo(String token, String type,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String name, String orgName)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws RemoteException, IdRepoException, SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public String registerNotificationURL_idrepo(String url)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public void deRegisterNotificationURL_idrepo(String notificationID)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Set objectsChanged_idrepo(int time) throws RemoteException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster public Map getSpecialIdentities_idrepo(String token,
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster String type, String orgName)
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster throws RemoteException, IdRepoException, SSOException;
8af80418ba1ec431c8027fa9668e5678658d3611Allan Foster}