Revision: 171
Author: suneetshah2000
Date: Wed Jun 9 22:23:19 2010
Log: [No log message]
http://code.google.com/p/openiam-idm/source/detail?r=171
Added:
/trunk/iam-interceptor
/trunk/iam-interceptor/pom.xml
/trunk/iam-interceptor/src
/trunk/iam-interceptor/src/main
/trunk/iam-interceptor/src/main/META-INF
/trunk/iam-interceptor/src/main/java
/trunk/iam-interceptor/src/main/java/org
/trunk/iam-interceptor/src/main/java/org/openiam
/trunk/iam-interceptor/src/main/java/org/openiam/intercept
/trunk/iam-interceptor/src/main/java/org/openiam/intercept/wssec
/trunk/iam-interceptor/src/main/java/org/openiam/intercept/wssec/SecurityUtil.java
/trunk/iam-interceptor/src/main/java/org/openiam/intercept/wssec/ServerPasswordCallback.java
/trunk/iam-interceptor/src/main/java/org/openiam/intercept/wssec/WSConstants.java
/trunk/iam-interceptor/src/main/java/org/openiam/intercept/wssec/WSHandlerConstants.java
/trunk/iam-interceptor/src/main/java/org/openiam/intercept/wssec/WSS4JInInterceptor.java
/trunk/iam-interceptor/src/main/java/org/openiam/intercept/wssec/WSSConfig.java
/trunk/iam-interceptor/src/main/java/org/openiam/intercept/wssec/WSSecurityEngine.java
/trunk/iam-interceptor/src/main/resources
/trunk/iam-interceptor/src/test
/trunk/iam-interceptor/src/test/java
/trunk/iam-interceptor/src/test/resources
/trunk/idm-connector-core
/trunk/idm-connector-core/pom.xml
/trunk/idm-connector-core/soap-ui-test
/trunk/idm-connector-core/soap-ui-test/ExampleConnector-soapui-project.xml
/trunk/idm-connector-core/src
/trunk/idm-connector-core/src/main
/trunk/idm-connector-core/src/main/config
/trunk/idm-connector-core/src/main/java
/trunk/idm-connector-core/src/main/java/org
/trunk/idm-connector-core/src/main/java/org/openiam
/trunk/idm-connector-core/src/main/java/org/openiam/idm
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/recon
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/recon/service
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/recon/service/ReconResultDetailDAOImpl.java
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/recon/service/ReconciliationConfigDAOImpl.java
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/recon/service/ReconciliationResultDAOImpl.java
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/recon/service/ReconciliationServiceImpl.java
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/recon/service/ReconciliationSituationDAOImpl.java
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/recon/ws
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/recon/ws/ReconciliationWebServiceImpl.java
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/synch
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/synch/service
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/synch/service/IdentitySynchServiceImpl.java
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/synch/service/SynchConfigDAOImpl.java
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/synch/service/SynchConfigDataMappingDAOImpl.java
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/synch/ws
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/synch/ws/IdentitySynchWebServiceImpl.java
/trunk/idm-connector-core/src/main/java/org/openiam/provision
/trunk/idm-connector-core/src/main/java/org/openiam/provision/cmd
/trunk/idm-connector-core/src/main/java/org/openiam/provision/cmd/AddUserCommand.java
/trunk/idm-connector-core/src/main/java/org/openiam/provision/cmd/DeleteUserCommand.java
/trunk/idm-connector-core/src/main/java/org/openiam/provision/cmd/ModifyUserCommand.java
/trunk/idm-connector-core/src/main/java/org/openiam/provision/cmd/ProvisioningCommand.java
/trunk/idm-connector-core/src/main/java/org/openiam/provision/cmd/SetPasswordCommand.java
/trunk/idm-connector-core/src/main/java/org/openiam/provision/resp
/trunk/idm-connector-core/src/main/java/org/openiam/provision/resp/PasswordResponse.java
/trunk/idm-connector-core/src/main/java/org/openiam/provision/resp/ProvisionGroupResponse.java
/trunk/idm-connector-core/src/main/java/org/openiam/provision/resp/ProvisionUserResponse.java
/trunk/idm-connector-core/src/main/java/org/openiam/provision/service
/trunk/idm-connector-core/src/main/java/org/openiam/provision/service/AddUser.java
/trunk/idm-connector-core/src/main/java/org/openiam/provision/service/AttributeListBuilder.java
/trunk/idm-connector-core/src/main/java/org/openiam/provision/service/ConnectorAdapter.java
/trunk/idm-connector-core/src/main/java/org/openiam/provision/service/DefaultProvisioningService.java
/trunk/idm-connector-core/src/main/java/org/openiam/provision/service/ManagedSysAttributes.java
/trunk/idm-connector-core/src/main/java/org/openiam/provision/service/ManagedSysPolicy.java
/trunk/idm-connector-core/src/main/java/org/openiam/provision/service/ModifyUser.java
/trunk/idm-connector-core/src/main/java/org/openiam/provision/service/ProvisionServiceImpl.java
/trunk/idm-connector-core/src/main/java/org/openiam/provision/service/UserAttributeHelper.java
/trunk/idm-connector-core/src/main/java/org/openiam/provision/service/package.html
/trunk/idm-connector-core/src/main/java/org/openiam/spml2
/trunk/idm-connector-core/src/main/java/org/openiam/spml2/base
/trunk/idm-connector-core/src/main/java/org/openiam/spml2/base/AbstractSpml2Complete.java
/trunk/idm-connector-core/src/main/java/org/openiam/spml2/interf
/trunk/idm-connector-core/src/main/java/org/openiam/spml2/interf/ConnectorService.java
/trunk/idm-connector-core/src/main/java/org/openiam/spml2/interf/SpmlSuspend.java
/trunk/idm-connector-core/src/main/java/org/openiam/spml2/msg
/trunk/idm-connector-core/src/main/java/org/openiam/spml2/spi
/trunk/idm-connector-core/src/main/java/org/openiam/spml2/spi/ad
/trunk/idm-connector-core/src/main/java/org/openiam/spml2/spi/ad/ActiveDirConnectorImpl.java
/trunk/idm-connector-core/src/main/java/org/openiam/spml2/spi/ad/ActiveDirectoryEnum.java
/trunk/idm-connector-core/src/main/java/org/openiam/spml2/spi/example
/trunk/idm-connector-core/src/main/java/org/openiam/spml2/spi/example/ExampleComplete.java
/trunk/idm-connector-core/src/main/java/org/openiam/spml2/spi/gapps
/trunk/idm-connector-core/src/main/java/org/openiam/spml2/spi/ldap
/trunk/idm-connector-core/src/main/java/org/openiam/spml2/spi/ldap/LdapConnectorImpl.java
/trunk/idm-connector-core/src/main/java/org/openiam/spml2/spi/orcl
/trunk/idm-connector-core/src/main/java/org/openiam/spml2/spi/orcl/OracleConnectorImpl.java
/trunk/idm-connector-core/src/main/java/org/openiam/spml2/spi/script
/trunk/idm-connector-core/src/main/java/org/openiam/spml2/spi/script/ScriptConnectorImpl.java
/trunk/idm-connector-core/src/main/java/org/openiam/spml2/util
/trunk/idm-connector-core/src/main/java/org/openiam/spml2/util/connect
/trunk/idm-connector-core/src/main/java/org/openiam/spml2/util/connect/ConnectionFactory.java
/trunk/idm-connector-core/src/main/java/org/openiam/spml2/util/connect/ConnectionManagerConstant.java
/trunk/idm-connector-core/src/main/java/org/openiam/spml2/util/connect/ConnectionMgr.java
/trunk/idm-connector-core/src/main/java/org/openiam/spml2/util/connect/LdapConnectionMgr.java
/trunk/idm-connector-core/src/main/java/org/openiam/synch
/trunk/idm-connector-core/src/main/resources
/trunk/idm-connector-core/src/main/resources/LdapBeansContext.xml
/trunk/idm-connector-core/src/main/resources/connector-coreContext.xml
/trunk/idm-connector-core/src/main/resources/oasis
/trunk/idm-connector-core/src/main/resources/oasis/names
/trunk/idm-connector-core/src/main/resources/oasis/names/tc
/trunk/idm-connector-core/src/main/resources/oasis/names/tc/spml
/trunk/idm-connector-core/src/main/resources/oasis/names/tc/spml/_2
/trunk/idm-connector-core/src/main/resources/org
/trunk/idm-connector-core/src/main/resources/org/openiam
/trunk/idm-connector-core/src/main/resources/org/openiam/idm
/trunk/idm-connector-core/src/main/resources/org/openiam/idm/srvc
/trunk/idm-connector-core/src/main/resources/org/openiam/idm/srvc/recon
/trunk/idm-connector-core/src/main/resources/org/openiam/idm/srvc/recon/service
/trunk/idm-connector-core/src/main/resources/org/openiam/idm/srvc/recon/service/ReconResultDetail.hbm.xml
/trunk/idm-connector-core/src/main/resources/org/openiam/idm/srvc/recon/service/ReconciliationConfig.hbm.xml
/trunk/idm-connector-core/src/main/resources/org/openiam/idm/srvc/recon/service/ReconciliationResult.hbm.xml
/trunk/idm-connector-core/src/main/resources/org/openiam/idm/srvc/recon/service/ReconciliationSituation.hbm.xml
/trunk/idm-connector-core/src/main/resources/org/openiam/idm/srvc/synch
/trunk/idm-connector-core/src/main/resources/org/openiam/idm/srvc/synch/service
/trunk/idm-connector-core/src/main/resources/org/openiam/idm/srvc/synch/service/SynchConfig.hbm.xml
/trunk/idm-connector-core/src/main/resources/org/openiam/idm/srvc/synch/service/SynchConfigDataMapping.hbm.xml
/trunk/idm-connector-core/src/main/resources/pstc_spmlv2_async.wsdl
/trunk/idm-connector-core/src/main/resources/pstc_spmlv2_async.xsd
/trunk/idm-connector-core/src/main/resources/pstc_spmlv2_batch.wsdl
/trunk/idm-connector-core/src/main/resources/pstc_spmlv2_batch.xsd
/trunk/idm-connector-core/src/main/resources/pstc_spmlv2_bulk.wsdl
/trunk/idm-connector-core/src/main/resources/pstc_spmlv2_bulk.xsd
/trunk/idm-connector-core/src/main/resources/pstc_spmlv2_core.wsdl
/trunk/idm-connector-core/src/main/resources/pstc_spmlv2_core.xsd
/trunk/idm-connector-core/src/main/resources/pstc_spmlv2_dsml.xsd
/trunk/idm-connector-core/src/main/resources/pstc_spmlv2_password.wsdl
/trunk/idm-connector-core/src/main/resources/pstc_spmlv2_password.xsd
/trunk/idm-connector-core/src/main/resources/pstc_spmlv2_reference.wsdl
/trunk/idm-connector-core/src/main/resources/pstc_spmlv2_reference.xsd
/trunk/idm-connector-core/src/main/resources/pstc_spmlv2_search.wsdl
/trunk/idm-connector-core/src/main/resources/pstc_spmlv2_search.xsd
/trunk/idm-connector-core/src/main/resources/pstc_spmlv2_suspend.wsdl
/trunk/idm-connector-core/src/main/resources/pstc_spmlv2_suspend.xsd
/trunk/idm-connector-core/src/main/resources/pstc_spmlv2_updates.wsdl
/trunk/idm-connector-core/src/main/resources/pstc_spmlv2_updates.xsd
/trunk/idm-connector-core/src/test
/trunk/idm-connector-core/src/test/java
/trunk/idm-connector-core/src/test/java/org
/trunk/idm-connector-core/src/test/java/org/openiam
/trunk/idm-connector-core/src/test/java/org/openiam/idm
/trunk/idm-connector-core/src/test/java/org/openiam/idm/connector
/trunk/idm-connector-core/src/test/java/org/openiam/spml2
/trunk/idm-connector-core/src/test/java/org/openiam/spml2/spi
/trunk/idm-connector-core/src/test/resources
/trunk/idm-connector-core/src/test/resources/LdapTestContext.xml
/trunk/idm-connector-core/src/test/resources/cayo.dat
/trunk/idm-connector-core/src/test/resources/datasource.properties
/trunk/idm-connector-core/src/test/resources/scripts
/trunk/idm-connector-core/src/test/resources/scripts/emailtemplate
/trunk/idm-connector-core/src/test/resources/scripts/example
/trunk/idm-connector-core/src/test/resources/scripts/example/hello.groovy
/trunk/idm-connector-core/src/test/resources/scripts/example/springintegration.groovy
/trunk/idm-connector-core/src/test/resources/scripts/provision
/trunk/idm-connector-core/src/test/resources/securityconf.properties
/trunk/idm-connector-intf
/trunk/idm-connector-intf/pom.xml
/trunk/idm-connector-intf/src
/trunk/idm-connector-intf/src/main
/trunk/idm-connector-intf/src/main/config
/trunk/idm-connector-intf/src/main/java
/trunk/idm-connector-intf/src/main/java/org
/trunk/idm-connector-intf/src/main/java/org/openiam
/trunk/idm-connector-intf/src/main/java/org/openiam/idm
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/connector
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/recon
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/recon/dto
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/recon/dto/ReconResultDetail.java
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/recon/dto/ReconciliationConfig.java
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/recon/dto/ReconciliationResult.java
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/recon/dto/ReconciliationSituation.java
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/recon/service
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/recon/service/ReconResultDetailDAO.java
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/recon/service/ReconciliationConfigDAO.java
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/recon/service/ReconciliationResultDAO.java
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/recon/service/ReconciliationService.java
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/recon/service/ReconciliationSituationDAO.java
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/recon/ws
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/recon/ws/ReconciliationConfigListResponse.java
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/recon/ws/ReconciliationConfigResponse.java
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/recon/ws/ReconciliationWebService.java
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/sync
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/synch
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/synch/dto
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/synch/dto/SynchConfig.java
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/synch/dto/SynchConfigDataMapping.java
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/synch/service
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/synch/service/IdentitySynchService.java
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/synch/service/SynchConfigDAO.java
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/synch/service/SynchConfigDataMappingDAO.java
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/synch/ws
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/synch/ws/IdentitySynchWebService.java
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/synch/ws/SynchConfigListResponse.java
/trunk/idm-connector-intf/src/main/java/org/openiam/idm/srvc/synch/ws/SynchConfigResponse.java
/trunk/idm-connector-intf/src/main/java/org/openiam/provision
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/cmd
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/dto
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/dto/AccountLockEnum.java
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/dto/Application.java
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/dto/PasswordSync.java
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/dto/ProvisionGroup.java
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/dto/ProvisionMethodEnum.java
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/dto/ProvisionModelEnum.java
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/dto/ProvisionUser.java
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/resp
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/resp/PasswordResponse.java
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/resp/ProvisionGroupResponse.java
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/resp/ProvisionUserResponse.java
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/service
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/service/ProvisionService.java
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/service/package.html
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/type
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/type/ExtensibleAddress.java
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/type/ExtensibleAttribute.java
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/type/ExtensibleEmailAddress.java
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/type/ExtensibleGroup.java
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/type/ExtensibleObject.java
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/type/ExtensiblePhone.java
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/type/ExtensibleRole.java
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/type/ExtensibleUser.java
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/type/ModificationAttribute.java
/trunk/idm-connector-intf/src/main/java/org/openiam/provision/type/package-info.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/base
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/base/AbstractSpml2Complete.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/interf
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/interf/ConnectorService.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/interf/SpmlSuspend.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/AddRequestType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/AddResponseType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/CapabilitiesListType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/CapabilityDataType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/CapabilityType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/DeleteRequestType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/ErrorCode.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/ExecutionModeType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/ExtensibleAttribute.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/ExtensibleType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/IdentifierType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/ListTargetsRequestType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/ListTargetsResponseType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/LookupRequestType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/LookupResponseType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/ModificationModeType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/ModificationType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/ModifyRequestType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/ModifyResponseType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/NamespacePrefixMappingType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/ObjectFactory.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/PSOIdentifierType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/PSOType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/QueryClauseType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/RequestType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/ResponseType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/ReturnDataType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/SchemaEntityRefType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/SchemaType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/SelectionType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/StatusCodeType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/TargetType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/async
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/async/CancelRequestType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/async/CancelResponseType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/async/ObjectFactory.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/async/StatusRequestType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/async/StatusResponseType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/async/package-info.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/batch
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/batch/BatchRequestType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/batch/BatchResponseType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/batch/ObjectFactory.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/batch/OnErrorType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/batch/ProcessingType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/batch/package-info.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/bulk
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/bulk/BulkDeleteRequestType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/bulk/BulkModifyRequestType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/bulk/ObjectFactory.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/bulk/package-info.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/package-info.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/password
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/password/ExpirePasswordRequestType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/password/ObjectFactory.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/password/ResetPasswordRequestType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/password/ResetPasswordResponseType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/password/SetPasswordRequestType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/password/ValidatePasswordRequestType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/password/ValidatePasswordResponseType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/password/package-info.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/reference
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/reference/HasReferenceType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/reference/ObjectFactory.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/reference/ReferenceDefinitionType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/reference/ReferenceType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/reference/package-info.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/search
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/search/CloseIteratorRequestType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/search/IterateRequestType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/search/LogicalOperatorType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/search/ObjectFactory.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/search/ResultsIteratorType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/search/ScopeType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/search/SearchQueryType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/search/SearchRequestType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/search/SearchResponseType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/search/package-info.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/suspend
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/suspend/ActiveRequestType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/suspend/ActiveResponseType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/suspend/IsActiveType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/suspend/ObjectFactory.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/suspend/ResumeRequestType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/suspend/SuspendRequestType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/suspend/package-info.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/updates
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/updates/CloseIteratorRequestType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/updates/IterateRequestType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/updates/ObjectFactory.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/updates/ResultsIteratorType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/updates/UpdateKindType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/updates/UpdateType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/updates/UpdatesRequestType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/updates/UpdatesResponseType.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/msg/updates/package-info.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/spi
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/util
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/util/connect
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/util/connect/ConnectionFactory.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/util/connect/ConnectionManagerConstant.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/util/connect/ConnectionMgr.java
/trunk/idm-connector-intf/src/main/java/org/openiam/spml2/util/connect/LdapConnectionMgr.java
/trunk/idm-connector-intf/src/main/java/org/openiam/synch
/trunk/idm-connector-intf/src/main/java/org/openiam/synch/notify
/trunk/idm-connector-intf/src/main/resources
/trunk/idm-connector-intf/src/test
/trunk/idm-connector-intf/src/test/resources
/trunk/idm-connector-ws
/trunk/idm-connector-ws/pom.xml
/trunk/idm-connector-ws/soap-ui-test
/trunk/idm-connector-ws/soap-ui-test/DefaultProvisioningService-soapui-project.xml
/trunk/idm-connector-ws/soap-ui-test/DefaultProvisioningService2-soapui-project.xml
/trunk/idm-connector-ws/soap-ui-test/ExampleConnectorService-soapui-project.xml
/trunk/idm-connector-ws/soap-ui-test/LDAPConnectorService-soapui-project.xml
/trunk/idm-connector-ws/soap-ui-test/LdapConnector-soapui-project.xml
/trunk/idm-connector-ws/soap-ui-test/PasswordPolicyValidation-soapui-project.xml
/trunk/idm-connector-ws/soap-ui-test/ProvisionControllerService-WS-Security-soapui-project.xml
/trunk/idm-connector-ws/soap-ui-test/Provisioning
Service-soapui-project.xml
/trunk/idm-connector-ws/src
/trunk/idm-connector-ws/src/main
/trunk/idm-connector-ws/src/main/java
/trunk/idm-connector-ws/src/main/java/org
/trunk/idm-connector-ws/src/main/java/org/openiam
/trunk/idm-connector-ws/src/main/java/org/openiam/idm
/trunk/idm-connector-ws/src/main/java/org/openiam/idm/srvc
/trunk/idm-connector-ws/src/main/java/org/openiam/idm/ws
/trunk/idm-connector-ws/src/main/java/org/openiam/idm/ws/adapters
/trunk/idm-connector-ws/src/main/java/org/openiam/idm/ws/adapters/CalendarAdapter.java
/trunk/idm-connector-ws/src/main/java/org/openiam/idm/ws/adapters/DateAdapter.java
/trunk/idm-connector-ws/src/main/java/org/openiam/idm/ws/adapters/OrganizationAttributeSetAdapter.java
/trunk/idm-connector-ws/src/main/java/org/openiam/idm/ws/adapters/UserAttributeSetAdapter.java
/trunk/idm-connector-ws/src/main/resources
/trunk/idm-connector-ws/src/main/webapp
/trunk/idm-connector-ws/src/main/webapp/WEB-INF
/trunk/idm-connector-ws/src/main/webapp/WEB-INF/web.xml
/trunk/idm-connector-ws/src/main/webapp/WEB-INF/ws-beans.xml
/trunk/idm-connector-ws/src/main/webapp/WEB-INF/wsdl
/trunk/idm-connector-ws/src/main/webapp/WEB-INF/wsdl/ConnectorService.wsdl
/trunk/idm-connector-ws/src/main/webapp/WEB-INF/wsdl/ExampleConnectorService.xml
/trunk/idm-connector-ws/src/main/webapp/WEB-INF/wsdl/ExampleConnectorServiceWsdl.xml
/trunk/idm-connector-ws/src/test
/trunk/idm-connector-ws/src/test/java
/trunk/idm-connector-ws/src/test/java/org
/trunk/idm-connector-ws/src/test/java/org/openiam
/trunk/idm-connector-ws/src/test/java/org/openiam/idm
/trunk/idm-connector-ws/src/test/java/org/openiam/srvc
/trunk/idm-connector-ws/src/test/java/org/openiam/srvc/UserMgrTest.java
/trunk/idm-connector-ws/src/test/resources
/trunk/idm-connector-ws/src/test/resources/client-beans.xml
/trunk/idm-connector-ws/src/test/resources/hello-client-beans.xml
/trunk/idm-connector-ws/src/test/resources/provision-test.sql
/trunk/openiam-idm-esb
/trunk/openiam-idm-esb/pom.xml
/trunk/openiam-idm-esb/src
/trunk/openiam-idm-esb/src/main
/trunk/openiam-idm-esb/src/main/resources
/trunk/openiam-idm-esb/src/main/resources/activemq.xml
/trunk/openiam-idm-esb/src/main/resources/log4j.properties
/trunk/openiam-idm-esb/src/main/resources/openiam-connector-mule-config.xml
/trunk/openiam-idm-esb/src/main/resources/openiam-connector-standalone-mule-config.xml
/trunk/openiam-idm-esb/src/main/resources/openiam-embedded-mule-config.xml
/trunk/openiam-idm-esb/src/main/resources/openiam-mule-config.xml
/trunk/openiam-idm-esb/src/main/resources/openiam-standalone-mule-config.xml
/trunk/openiam-idm-esb/src/main/webapp
/trunk/openiam-idm-esb/src/main/webapp/WEB-INF
/trunk/openiam-idm-esb/src/main/webapp/WEB-INF/web.xml
/trunk/openiam-idm-esb/src/test
/trunk/openiam-idm-esb/src/test/java
/trunk/openiam-idm-esb/src/test/java/org
/trunk/openiam-idm-esb/src/test/java/org/openiam
/trunk/openiam-idm-esb/src/test/java/org/openiam/mule
/trunk/openiam-idm-esb/src/test/java/org/openiam/mule/functional
/trunk/openiam-idm-esb/src/test/java/org/openiam/mule/functional/BasicFunctionalTestCase.java
/trunk/openiam-idm-esb/src/test/java/org/openiam/mule/functional/BasicWithConnectorFunctionalTestCase.java
/trunk/openiam-idm-esb/src/test/resources
/trunk/openiam-idm-esb/src/test/resources/datasource.properties
/trunk/openiam-jaas
/trunk/openiam-jaas/pom.xml
/trunk/openiam-jaas/src
/trunk/openiam-jaas/src/main
/trunk/openiam-jaas/src/main/config
/trunk/openiam-jaas/src/main/java
/trunk/openiam-jaas/src/main/java/org
/trunk/openiam-jaas/src/main/java/org/openiam
/trunk/openiam-jaas/src/main/java/org/openiam/am
/trunk/openiam-jaas/src/main/java/org/openiam/am/jaas
/trunk/openiam-jaas/src/main/java/org/openiam/am/jaas/DefaultCallbackHandler.java
/trunk/openiam-jaas/src/main/java/org/openiam/am/jaas/LoginModule.java
/trunk/openiam-jaas/src/main/java/org/openiam/am/jaas/SAMLCallbackHandler.java
/trunk/openiam-jaas/src/main/java/org/openiam/am/jaas/ServiceLookupHelper.java
/trunk/openiam-jaas/src/main/resources
/trunk/openiam-jaas/src/test
/trunk/openiam-jaas/src/test/java
/trunk/openiam-jaas/src/test/java/org
/trunk/openiam-jaas/src/test/java/org/openiam
/trunk/openiam-jaas/src/test/java/org/openiam/am
/trunk/openiam-jaas/src/test/java/org/openiam/am/jaas
/trunk/openiam-jaas/src/test/java/org/openiam/am/jaas/TestLoginContext.java
/trunk/openiam-jaas/src/test/java/org/openiam/idm
/trunk/openiam-jaas/src/test/java/org/openiam/spml2
/trunk/openiam-jaas/src/test/resources
/trunk/openiam-jaas/src/test/resources/scripts
/trunk/openiam-pojo-intf
/trunk/openiam-pojo-intf/pom.xml
/trunk/openiam-pojo-intf/src
/trunk/openiam-pojo-intf/src/main
/trunk/openiam-pojo-intf/src/main/META-INF
/trunk/openiam-pojo-intf/src/main/META-INF/persistence.xml
/trunk/openiam-pojo-intf/src/main/java
/trunk/openiam-pojo-intf/src/main/java/org
/trunk/openiam-pojo-intf/src/main/java/org/openiam
/trunk/openiam-pojo-intf/src/main/java/org/openiam/base
/trunk/openiam-pojo-intf/src/main/java/org/openiam/base/AttributeOperationEnum.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/base/BaseAttributeDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/base/BaseDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/base/BaseHibernateDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/base/BaseObject.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/base/EnumUserType.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/base/SysConfiguration.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/base/id
/trunk/openiam-pojo-intf/src/main/java/org/openiam/base/id/SequenceGen.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/base/id/SequenceGenDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/base/property
/trunk/openiam-pojo-intf/src/main/java/org/openiam/base/property/Property.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/base/ws
/trunk/openiam-pojo-intf/src/main/java/org/openiam/base/ws/BooleanResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/base/ws/ObjectMap.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/base/ws/ObjectMapAdapter.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/base/ws/Response.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/base/ws/ResponseCode.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/base/ws/ResponseStatus.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/base/ws/StringResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/base/ws/package.html
/trunk/openiam-pojo-intf/src/main/java/org/openiam/exception
/trunk/openiam-pojo-intf/src/main/java/org/openiam/exception/AuthenticationException.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/exception/ConfigurationException.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/exception/CreateException.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/exception/LogoutException.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/exception/ObjectNotFoundException.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/exception/PasswordException.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/exception/data
/trunk/openiam-pojo-intf/src/main/java/org/openiam/exception/data/DataException.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/exception/data/DataExceptionCodes.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/exception/data/IdentityAnswerNotFoundException.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/exception/data/ObjectNotFoundException.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/exception/data/PrincipalNotFoundException.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/audit
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/audit/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/audit/dto/AuditConstants.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/audit/dto/IdmAuditLog.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/audit/dto/SearchAudit.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/audit/service
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/audit/service/IdmAuditLogDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/audit/service/IdmAuditLogDataService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/audit/ws
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/audit/ws/IdmAuditLogListResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/audit/ws/IdmAuditLogResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/audit/ws/IdmAuditLogWebDataService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/context
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/context/AuthContextFactory.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/context/AuthenticationContext.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/context/BaseCredential.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/context/Credential.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/context/PasswordCredential.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/dto/AuthState.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/dto/Login.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/dto/LoginAttribute.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/dto/LoginId.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/dto/SSOToken.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/dto/Subject.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/login
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/login/AuthStateDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/login/LoginAttributeDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/login/LoginDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/login/LoginDataService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/login/package.html
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/service
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/service/AuthenticationConstants.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/service/AuthenticationService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/service/package.html
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/ws
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/ws/LoginAttributeMap.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/ws/LoginAttributeMapAdapter.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/ws/LoginDataWebService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/ws/LoginListResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/auth/ws/LoginResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/batch
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/batch/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/batch/dto/BatchTask.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/batch/service
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/batch/service/BatchConfigDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/batch/service/BatchDataService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/cat
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/cat/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/cat/dto/Category.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/cat/dto/CategoryLanguage.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/cat/dto/CategoryLanguageId.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/cat/service
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/cat/service/CategoryDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/cat/service/CategoryDataService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/cat/service/CategoryLanguageDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/cd
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/cd/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/cd/dto/ReferenceData.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/cd/dto/ReferenceDataId.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/cd/dto/package.html
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/cd/service
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/cd/service/ReferenceDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/cd/service/ReferenceDataService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/cd/service/package.html
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/dto/Address.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/dto/AddressMap.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/dto/AddressMapAdapter.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/dto/ContactConstants.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/dto/EmailAddress.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/dto/EmailAddressMap.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/dto/EmailAddressMapAdapter.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/dto/ObjectFactory.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/dto/Phone.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/dto/PhoneMap.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/dto/PhoneMapAdapter.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/dto/package-info.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/service
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/service/AddressDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/service/EmailAddressDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/service/PhoneDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/ws
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/ws/AddressListResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/ws/AddressMapResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/ws/AddressResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/ws/EmailAddressListResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/ws/EmailAddressMapResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/ws/EmailAddressResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/ws/PhoneListResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/ws/PhoneMapResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/continfo/ws/PhoneResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/dto/Group.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/dto/GroupAttribute.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/dto/GroupAttributeMap.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/dto/GroupAttributeMapAdapter.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/dto/GroupSearch.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/dto/GroupSet.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/dto/GroupSetAdapter.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/dto/GroupStatus.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/dto/ObjectFactory.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/dto/UserGroup.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/dto/package-info.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/dto/package.html
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/service
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/service/GroupAttributeDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/service/GroupDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/service/GroupDataService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/service/UserGroupDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/service/package.html
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/ws
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/ws/GroupArrayResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/ws/GroupAttrMapResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/ws/GroupAttributeResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/ws/GroupDataWebService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/ws/GroupListResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/grp/ws/GroupResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/lang
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/lang/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/lang/dto/Language.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/lang/service
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/lang/service/LanguageDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/lang/service/LanguageDataService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/loc
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/loc/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/loc/dto/Location.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/loc/dto/LocationSearch.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/loc/dto/package.html
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/loc/service
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/loc/service/LocationDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/loc/service/LocationDataService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/loc/service/package.html
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/loc/ws
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/loc/ws/LocationArrayResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/loc/ws/LocationDataWebService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/loc/ws/LocationResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/menu
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/menu/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/menu/dto/Menu.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/menu/dto/MenuId.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/menu/dto/NavigatorBar.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/menu/dto/NavigatorBarItem.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/menu/dto/Permission.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/menu/dto/PermissionId.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/menu/dto/package.html
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/menu/service
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/menu/service/NavigatorDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/menu/service/NavigatorDataService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/menu/service/PermissionDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/menu/service/package.html
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/menu/ws
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/menu/ws/MenuListResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/menu/ws/MenuResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/menu/ws/NavigatorDataWebService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/meta
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/meta/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/meta/dto/MetadataConstants.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/meta/dto/MetadataElement.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/meta/dto/MetadataType.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/meta/dto/ObjectFactory.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/meta/dto/package-info.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/meta/service
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/meta/service/MetadataElementDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/meta/service/MetadataService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/meta/service/MetadataTypeDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/meta/ws
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/meta/ws/MetadataElementArrayResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/meta/ws/MetadataElementResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/meta/ws/MetadataTypeArrayResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/meta/ws/MetadataTypeResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/meta/ws/MetadataWebService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/mngsys
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/mngsys/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/mngsys/dto/ApprovalActionsEnum.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/mngsys/dto/ApproverAssociation.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/mngsys/dto/AttributeMap.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/mngsys/dto/ManagedSys.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/mngsys/dto/ManagedSystemObjectMatch.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/mngsys/dto/ProvisionConnector.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/mngsys/service
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/mngsys/service/ApproverAssociationDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/mngsys/service/AttributeMapDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/mngsys/service/ConnectorDataService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/mngsys/service/ManagedSysDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/mngsys/service/ManagedSystemDataService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/mngsys/service/ManagedSystemObjectMatchDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/mngsys/service/ProvisionConnectorDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/msg
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/msg/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/msg/dto/NotificationParam.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/msg/dto/NotificationRequest.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/msg/dto/NotificationType.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/msg/dto/SysMessage.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/msg/service
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/msg/service/MailService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/msg/service/SysMessageDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/msg/service/SysMessageService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/msg/ws
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/msg/ws/SysMessageListResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/msg/ws/SysMessageResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/msg/ws/SysMessageWebService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/org
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/org/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/org/dto/ObjectFactory.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/org/dto/OrgClassificationEnum.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/org/dto/OrgClassificationEnumUserType.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/org/dto/Organization.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/org/dto/OrganizationAttribute.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/org/dto/OrganizationAttributeMap.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/org/dto/OrganizationAttributeMapAdapter.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/org/dto/OrganizationAttributeSet.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/org/dto/OrganizationAttributeSetAdapter.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/org/dto/package-info.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/org/service
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/org/service/OrganizationAttributeDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/org/service/OrganizationDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/org/service/OrganizationDataService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/org/service/OrganizationDataServiceClient.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/org/service/OrganizationDataWebService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/orgpolicy
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/orgpolicy/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/orgpolicy/dto/OrgPolicy.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/orgpolicy/dto/OrgPolicyUserLog.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/orgpolicy/service
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/orgpolicy/service/OrgPolicyDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/orgpolicy/service/OrgPolicyService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/orgpolicy/service/OrgPolicyUserLogDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/orgpolicy/ws
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/orgpolicy/ws/OrgPolicyListResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/orgpolicy/ws/OrgPolicyResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/orgpolicy/ws/OrgPolicyUserLogListResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/orgpolicy/ws/OrgPolicyWebService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/policy
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/policy/attr
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/policy/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/policy/dto/Policy.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/policy/dto/PolicyAttribute.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/policy/dto/PolicyConstants.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/policy/dto/PolicyDef.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/policy/dto/PolicyDefParam.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/policy/dto/PolicyMembership.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/policy/dto/PolicyObjectAssoc.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/policy/dto/PolicyObjectAssocId.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/policy/dto/PolicyScript.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/policy/service
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/policy/service/PolicyDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/policy/service/PolicyDataService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/policy/service/PolicyDefDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/policy/service/PolicyDefParamDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/policy/service/PolicyObjectAssocDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/policy/ws
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/policy/ws/PolicyResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/prov
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/prov/admin
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/prov/admin/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/prov/admin/dto/ProvisionConAttribute.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/prov/admin/dto/ProvisionConnector.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/prov/request
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/prov/request/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/prov/request/dto/ProvisionRequest.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/prov/request/dto/ProvisioningConstants.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/prov/request/dto/RequestApprover.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/prov/request/dto/RequestAttachment.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/prov/request/dto/RequestAttribute.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/prov/request/dto/RequestUser.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/prov/request/dto/SearchRequest.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/prov/request/service
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/prov/request/service/ProvisionRequestDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/prov/request/service/RequestDataService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/prov/request/ws
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/prov/request/ws/ProvisionReqListResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/prov/request/ws/ProvisionReqResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/prov/request/ws/RequestWebService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/pswd
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/pswd/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/pswd/dto/IdentityQuestGroup.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/pswd/dto/IdentityQuestion.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/pswd/dto/Password.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/pswd/dto/PasswordHistory.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/pswd/dto/PasswordValidationCode.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/pswd/dto/UserIdentityAnswer.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/pswd/rule
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/pswd/rule/PasswordValidator.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/pswd/service
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/pswd/service/ChallengeResponseService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/pswd/service/IdentityQuestGroupDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/pswd/service/IdentityQuestionDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/pswd/service/PasswordGenerator.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/pswd/service/PasswordHistoryDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/pswd/service/PasswordService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/pswd/service/UserIdentityAnswerDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/pswd/service/package.html
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/pswd/ws
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/pswd/ws/PasswordWebService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/qry
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/qry/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/qry/dto/ParameterTypeEnum.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/qry/dto/Query.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/qry/dto/QueryParam.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/qry/service
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/qry/service/QueryDataService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/qry/ws
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/qry/ws/QueryDataWebService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/qry/ws/QueryListResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/res
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/res/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/res/dto/Resource.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/res/dto/ResourcePolicy.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/res/dto/ResourceProp.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/res/dto/ResourceRole.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/res/dto/ResourceRoleId.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/res/dto/ResourceType.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/res/dto/ResourceUser.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/res/dto/ResourceUserId.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/res/service
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/res/service/ResourceDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/res/service/ResourceDataService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/res/service/ResourcePropDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/res/service/ResourceRoleDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/res/service/ResourceTypeDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/res/service/ResourceUserDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/dto/ObjectFactory.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/dto/Role.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/dto/RoleAttribute.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/dto/RoleAttributeSet.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/dto/RoleAttributeSetAdapter.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/dto/RoleConstant.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/dto/RoleId.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/dto/RoleSearch.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/dto/RoleSet.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/dto/RoleSetAdapter.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/dto/RoleStatus.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/dto/UserRole.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/dto/package-info.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/dto/package.html
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/service
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/service/RoleAttributeDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/service/RoleDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/service/RoleDataService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/service/UserRoleDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/service/package.html
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/ws
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/ws/RoleArrayResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/ws/RoleAttributeArrayResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/ws/RoleAttributeResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/ws/RoleDataWebService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/ws/RoleListResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/role/ws/RoleResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/rpt
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/rpt/qryobject
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/rpt/qryobject/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/rpt/qryobject/dto/UserLoginStatusReport.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/secdomain
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/secdomain/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/secdomain/dto/SecurityDomain.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/secdomain/service
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/secdomain/service/SecurityDomainDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/secdomain/service/SecurityDomainDataService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/service
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/service/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/service/dto/RequestApprover.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/service/dto/RequestForm.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/service/dto/RequestFormId.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/service/dto/Service.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/service/dto/ServiceConfig.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/service/service
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/service/service/ServiceDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/service/service/ServiceMgr.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/dto
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/dto/ObjectFactory.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/dto/Supervisor.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/dto/User.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/dto/UserAttribute.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/dto/UserAttributeMap.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/dto/UserAttributeMapAdapter.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/dto/UserAttributeSet.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/dto/UserAttributeSetAdapter.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/dto/UserConstant.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/dto/UserNote.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/dto/UserNoteSet.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/dto/UserNoteSetAdapter.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/dto/UserSearch.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/dto/UserSearchField.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/dto/UserSet.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/dto/UserSetAdapter.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/dto/UserStatusEnum.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/dto/UserStatusEnumUserType.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/dto/package-info.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/dto/package.html
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/service
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/service/SupervisorDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/service/SupervisorDAOImpl.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/service/UserAttributeDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/service/UserAttributeDAOImpl.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/service/UserDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/service/UserDataService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/service/UserDataWebService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/service/UserNoteDAO.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/service/package.html
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/ws
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/ws/SupervisorListResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/ws/SupervisorResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/ws/UserArrayResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/ws/UserAttributeResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/ws/UserDataWebService.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/ws/UserListResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/ws/UserNoteListResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/ws/UserNoteResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/idm/srvc/user/ws/UserResponse.java
/trunk/openiam-pojo-intf/src/main/java/org/openiam/util
/trunk/openiam-pojo-intf/src/main/java/org/openiam/util/ws
/trunk/openiam-pojo-intf/src/main/java/org/openiam/ws
/trunk/openiam-pojo-intf/src/main/resources
/trunk/openiam-pojo-intf/src/main/resources/org
/trunk/openiam-pojo-intf/src/main/resources/org/openiam
/trunk/openiam-pojo-intf/src/main/resources/org/openiam/idm
/trunk/openiam-pojo-intf/src/main/resources/org/openiam/idm/srvc
/trunk/openiam-pojo-intf/src/test
/trunk/openiam-pojo-intf/src/test/java
/trunk/openiam-pojo-intf/src/test/java/org
/trunk/openiam-pojo-intf/src/test/java/org/openiam
/trunk/openiam-pojo-intf/src/test/java/org/openiam/idm
/trunk/openiam-pojo-intf/src/test/resources
/trunk/openiam-pojo-services
/trunk/openiam-pojo-services/pom.xml
/trunk/openiam-pojo-services/src
/trunk/openiam-pojo-services/src/main
/trunk/openiam-pojo-services/src/main/META-INF
/trunk/openiam-pojo-services/src/main/META-INF/persistence.xml
/trunk/openiam-pojo-services/src/main/java
/trunk/openiam-pojo-services/src/main/java/org
/trunk/openiam-pojo-services/src/main/java/org/openiam
/trunk/openiam-pojo-services/src/main/java/org/openiam/base
/trunk/openiam-pojo-services/src/main/java/org/openiam/base/id
/trunk/openiam-pojo-services/src/main/java/org/openiam/base/id/OracleSequenceGenDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/base/id/SequenceGenDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/base/id/SequenceGenerator.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/base/id/UUIDGen.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/base/property
/trunk/openiam-pojo-services/src/main/java/org/openiam/base/property/PropertyImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/exception
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/audit
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/audit/service
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/audit/service/AuditHelper.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/audit/service/AuditLogUtil.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/audit/service/IdmAuditLogDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/audit/service/IdmAuditLogDataServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/audit/ws
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/audit/ws/IdmAuditLogWebDataServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/context
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/context/AuthenticationContextImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/login
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/login/AuthStateDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/login/LoginAttributeDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/login/LoginDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/login/LoginDataServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/login/package.html
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/service
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/service/AuthenticationServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/service/package.html
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/spi
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/spi/AbstractLoginModule.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/spi/ActiveDirectoryLoginModule.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/spi/DefaultLoginModule.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/spi/LDAPLoginModule.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/spi/LoginModule.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/spi/LoginModuleFactory.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/spi/PostLogin.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/sso
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/sso/DefaultTokenModule.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/sso/SAML1TokenModule.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/sso/SAML2TokenModule.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/sso/SAMLBootstrap.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/sso/SSOTokenFactory.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/sso/SSOTokenModule.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/ws
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/auth/ws/LoginDataWebServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/batch
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/batch/service
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/batch/service/BatchConfigDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/batch/service/BatchDataServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/batch/ws
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/cat
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/cat/service
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/cat/service/CategoryDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/cat/service/CategoryDataServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/cat/service/CategoryLanguageDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/cd
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/cd/service
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/cd/service/ReferenceDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/cd/service/ReferenceDataServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/cd/service/package.html
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/continfo
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/continfo/service
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/continfo/service/AddressDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/continfo/service/EmailAddressDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/continfo/service/PhoneDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/grp
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/grp/service
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/grp/service/GroupAttributeDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/grp/service/GroupDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/grp/service/GroupDataServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/grp/service/UserGroupDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/grp/service/package.html
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/grp/ws
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/grp/ws/GroupDataWebServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/lang
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/lang/service
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/lang/service/LanguageDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/lang/service/LanguageDataServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/loc
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/loc/service
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/loc/service/LocationDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/loc/service/LocationDataServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/loc/service/package.html
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/loc/ws
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/loc/ws/LocationDataWebServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/menu
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/menu/service
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/menu/service/NavigatorDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/menu/service/NavigatorDataServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/menu/service/PermissionDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/menu/service/package.html
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/menu/ws
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/menu/ws/NavigatorDataWebServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/meta
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/meta/service
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/meta/service/MetadataElementDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/meta/service/MetadataServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/meta/service/MetadataTypeDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/meta/ws
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/meta/ws/MetadataWebServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/mngsys
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/mngsys/service
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/mngsys/service/ApproverAssociationDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/mngsys/service/AttributeMapDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/mngsys/service/ConnectorDataServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/mngsys/service/ManagedSysDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/mngsys/service/ManagedSystemDataServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/mngsys/service/ManagedSystemObjectMatchDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/mngsys/service/ProvisionConnectorDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/msg
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/msg/service
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/msg/service/MailServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/msg/service/SysMessageDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/msg/service/SysMessageServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/msg/ws
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/msg/ws/SysMessageWebServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/org
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/org/service
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/org/service/OrganizationAttributeDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/org/service/OrganizationDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/org/service/OrganizationDataServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/orgpolicy
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/orgpolicy/service
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/orgpolicy/service/OrgPolicyDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/orgpolicy/service/OrgPolicyServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/orgpolicy/service/OrgPolicyUserLogDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/orgpolicy/ws
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/orgpolicy/ws/OrgPolicyWebServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/policy
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/policy/attr
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/policy/service
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/policy/service/PolicyDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/policy/service/PolicyDataServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/policy/service/PolicyDefDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/policy/service/PolicyDefParamDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/policy/service/PolicyObjectAssocDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/policy/ws
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/prov
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/prov/admin
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/prov/request
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/prov/request/service
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/prov/request/service/ProvisionRequestDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/prov/request/service/RequestAttributeDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/prov/request/service/RequestDataServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/prov/request/service/RequestUserListDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/prov/request/ws
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/prov/request/ws/RequestWebServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/rule
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/rule/AbstractPasswordRule.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/rule/AlphaCharRule.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/rule/ChangePasswordByUserRule.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/rule/DefaultPasswordGenerator.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/rule/DefaultValidateChallengeResponse.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/rule/FixedPasswordGenerator.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/rule/GeneratePassword.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/rule/LowerCaseRule.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/rule/NonAlphaNumericRule.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/rule/NumericCharRule.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/rule/PasswordChangeAllowedRule.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/rule/PasswordChangesFrequencyRule.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/rule/PasswordHistoryRule.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/rule/PasswordLengthRule.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/rule/PasswordNotNameRule.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/rule/PasswordNotPasswordRule.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/rule/PasswordNotPrincipalRule.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/rule/PasswordValidationRule.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/rule/PasswordValidatorImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/rule/RejectCharactersRule.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/rule/ThemePasswordGenerator.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/rule/UpperCaseRule.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/rule/ValidateChallengeResponse.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/service
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/service/ChallengeResponseServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/service/IdentityQuestGroupDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/service/IdentityQuestionDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/service/PasswordGenerator.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/service/PasswordHistoryDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/service/PasswordServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/service/UserIdentityAnswerDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/service/package.html
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/ws
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/pswd/ws/PasswordWebServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/qry
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/qry/service
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/qry/service/QueryDataServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/qry/ws
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/qry/ws/QueryDataWebServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/res
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/res/service
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/res/service/ResourceDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/res/service/ResourceDataServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/res/service/ResourcePropDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/res/service/ResourceRoleDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/res/service/ResourceTypeDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/res/service/ResourceUserDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/role
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/role/service
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/role/service/RoleAttributeDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/role/service/RoleDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/role/service/RoleDataServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/role/service/UserRoleDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/role/service/package.html
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/role/ws
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/role/ws/RoleDataWebServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/secdomain
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/secdomain/service
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/secdomain/service/SecurityDomainDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/secdomain/service/SecurityDomainDataServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/service
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/service/service
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/service/service/ServiceDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/user
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/user/service
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/user/service/SupervisorDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/user/service/UserAttributeDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/user/service/UserDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/user/service/UserMgr.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/user/service/UserNoteDAOImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/user/service/package.html
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/user/ws
/trunk/openiam-pojo-services/src/main/java/org/openiam/idm/srvc/user/ws/UserDataWebServiceImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/script
/trunk/openiam-pojo-services/src/main/java/org/openiam/script/GroovyScriptEngineIntegration.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/script/GroovyShellIntegration.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/script/ScriptFactory.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/script/ScriptIntegration.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/util
/trunk/openiam-pojo-services/src/main/java/org/openiam/util/LoggerUtil.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/util/db
/trunk/openiam-pojo-services/src/main/java/org/openiam/util/db/OperationConstant.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/util/db/QueryCriteria.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/util/db/Search.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/util/db/SearchImpl.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/util/encrypt
/trunk/openiam-pojo-services/src/main/java/org/openiam/util/encrypt/AESCryptor.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/util/encrypt/CryptKey.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/util/encrypt/Cryptor.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/util/encrypt/DESedeCryptor.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/util/encrypt/HashDigest.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/util/encrypt/SHA1Hash.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/util/encrypt/SHA2Hash.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/util/encrypt/package.html
/trunk/openiam-pojo-services/src/main/java/org/openiam/util/ws
/trunk/openiam-pojo-services/src/main/java/org/openiam/util/ws/collection
/trunk/openiam-pojo-services/src/main/java/org/openiam/util/ws/collection/MapItem.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/util/ws/collection/MapUtil.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/util/ws/collection/StringUtil.java
/trunk/openiam-pojo-services/src/main/java/org/openiam/util/ws/collection/TimeUtil.java
/trunk/openiam-pojo-services/src/main/resources
/trunk/openiam-pojo-services/src/main/resources/applicationContext.xml
/trunk/openiam-pojo-services/src/main/resources/ehcache.xml
/trunk/openiam-pojo-services/src/main/resources/log4j.dtd
/trunk/openiam-pojo-services/src/main/resources/log4j.xml
/trunk/openiam-pojo-services/src/main/resources/org
/trunk/openiam-pojo-services/src/main/resources/org/openiam
/trunk/openiam-pojo-services/src/main/resources/org/openiam/base
/trunk/openiam-pojo-services/src/main/resources/org/openiam/base/id
/trunk/openiam-pojo-services/src/main/resources/org/openiam/base/id/SequenceGen.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/audit
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/audit/service
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/audit/service/IdmAuditLog.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/auth
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/auth/login
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/auth/login/AuthState.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/auth/login/Login.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/auth/login/LoginAttribute.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/batch
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/batch/service
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/batch/service/BatchConfig.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/cat
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/cat/service
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/cat/service/Category.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/cat/service/CategoryLanguage.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/cat/service/CategoryType.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/cd
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/cd/service
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/cd/service/ReferenceData.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/continfo
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/continfo/service
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/continfo/service/Address.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/continfo/service/EmailAddress.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/continfo/service/Phone.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/grp
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/grp/service
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/grp/service/Group.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/grp/service/GroupAttribute.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/grp/service/UserGroup.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/lang
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/lang/service
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/lang/service/Language.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/loc
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/loc/service
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/loc/service/Location.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/menu
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/menu/service
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/menu/service/Menu.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/menu/service/Permission.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/meta
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/meta/service
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/meta/service/MetadataElement.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/meta/service/MetadataType.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/mngsys
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/mngsys/service
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/mngsys/service/ApproverAssoc.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/mngsys/service/AttributeMap.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/mngsys/service/ManagedSys.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/mngsys/service/ManagedSysObjectMatch.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/mngsys/service/ProvisionConnector.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/msg
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/msg/service
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/msg/service/SysMessage.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/org
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/org/service
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/org/service/Organization.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/org/service/OrganizationAttribute.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/orgpolicy
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/orgpolicy/service
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/orgpolicy/service/OrgPolicy.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/orgpolicy/service/OrgPolicyUserLog.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/policy
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/policy/service
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/policy/service/Policy.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/policy/service/PolicyAttribute.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/policy/service/PolicyDef.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/policy/service/PolicyDefParam.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/policy/service/PolicyMembership.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/policy/service/PolicyObjectAssoc.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/prov
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/prov/admin
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/prov/admin/service
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/prov/admin/service/ProvisionConAttribute.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/prov/admin/service/ProvisionConnector.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/prov/request
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/prov/request/service
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/prov/request/service/ProvisionRequest.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/prov/request/service/RequestApprover.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/prov/request/service/RequestAttachment.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/prov/request/service/RequestAttribute.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/prov/request/service/RequestUser.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/pswd
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/pswd/service
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/pswd/service/IdentityQuestGroup.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/pswd/service/IdentityQuestion.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/pswd/service/PwdHistory.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/pswd/service/UserIdentityAnswer.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/res
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/res/service
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/res/service/Resource.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/res/service/ResourcePolicy.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/res/service/ResourceProp.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/res/service/ResourceRole.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/res/service/ResourceType.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/res/service/ResourceUser.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/role
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/role/service
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/role/service/Role.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/role/service/RoleAttribute.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/role/service/UserRole.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/rpt
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/rpt/qryobject
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/rpt/qryobject/dto
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/rpt/qryobject/dto/UserLoginStatusReport.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/secdomain
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/secdomain/service
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/secdomain/service/SecurityDomain.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/service
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/service/service
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/service/service/RequestApprover.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/service/service/RequestForm.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/service/service/Service.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/service/service/ServiceConfig.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/user
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/user/service
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/user/service/Supervisor.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/user/service/User.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/user/service/UserAttribute.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/user/service/UserNote.hbm.xml
/trunk/openiam-pojo-services/src/main/resources/org/openiam/idm/srvc/user/service/UserWS.hbm.xml
/trunk/openiam-pojo-services/src/test
/trunk/openiam-pojo-services/src/test/java
/trunk/openiam-pojo-services/src/test/java/org
/trunk/openiam-pojo-services/src/test/java/org/openiam
/trunk/openiam-pojo-services/src/test/java/org/openiam/base
/trunk/openiam-pojo-services/src/test/java/org/openiam/base/AbstractOpenIAMTestCase.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/base/id
/trunk/openiam-pojo-services/src/test/java/org/openiam/base/id/SequenceGenTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/audit
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/audit/IdmAuditDataServiceTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/auth
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/auth/ActiveDirectoryLoginTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/auth/AuthenticationSamlServiceTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/auth/AuthenticationServiceTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/auth/LDAPLoginTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/auth/LoginrMgrTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/cat
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/cat/CategoryServiceTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/continfo
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/continfo/AddressDAOTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/continfo/EmailAddressDAOTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/continfo/PhoneDAOTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/grp
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/grp/AddGroupTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/grp/GroupMgrTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/grp/GroupSearchTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/grp/HierachicalGroupTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/grp/UserGroupTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/lang
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/lang/LanguageServiceTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/loc
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/loc/LocationServiceTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/mail
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/mail/MailServiceTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/menu
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/menu/NavigatorServiceTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/meta
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/meta/MetadataServiceTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/mngsys
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/mngsys/ConnectorServiceTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/mngsys/ManagedSysServiceTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/org
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/org/OrgMgrTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/policy
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/policy/PolicyDataServiceTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/prov
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/prov/RequestDataServiceTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/pswd
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/pswd/ChallengeResponseServiceTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/res
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/res/ResourceDataServiceTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/role
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/role/AddRoleTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/role/GroupRoleDataServiceTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/role/HierarchicalRoleTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/role/RoleDataServiceTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/role/RoleSearchTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/role/UserRoleDataServiceTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/secdomain
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/secdomain/SecurityDomainDataServiceTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/service
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/service/ServiceMgrTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/user
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/user/UserMgrAddressTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/user/UserMgrAttributeTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/user/UserMgrEmailAddressTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/user/UserMgrInitTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/user/UserMgrNoteTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/user/UserMgrPhoneTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/user/UserMgrSearchTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/user/UserMgrSupervisorTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/idm/srvc/user/UserMgrTest.java
/trunk/openiam-pojo-services/src/test/java/org/openiam/util
/trunk/openiam-pojo-services/src/test/java/org/openiam/util/db
/trunk/openiam-pojo-services/src/test/java/org/openiam/util/db/DerbyUtil.java
/trunk/openiam-pojo-services/src/test/resources
/trunk/openiam-pojo-services/src/test/resources/categoryTest-applicationContext.xml
/trunk/openiam-pojo-services/src/test/resources/datasource.properties
/trunk/openiam-pojo-services/src/test/resources/groupTest-applicationContext.xml
/trunk/openiam-pojo-services/src/test/resources/idmAuditLogTest-applicationContext.xml
/trunk/openiam-pojo-services/src/test/resources/idmServices-soapui-project.xml
/trunk/openiam-pojo-services/src/test/resources/log4j.dtd
/trunk/openiam-pojo-services/src/test/resources/log4j.xml
/trunk/openiam-pojo-services/src/test/resources/loginTest-applicationContext.xml
/trunk/openiam-pojo-services/src/test/resources/metadataTest-applicationContext.xml
/trunk/openiam-pojo-services/src/test/resources/navigatorTest-applicationContext.xml
/trunk/openiam-pojo-services/src/test/resources/orgTest-applicationContext.xml
/trunk/openiam-pojo-services/src/test/resources/resourceDataServiceTest-applicationContext.xml
/trunk/openiam-pojo-services/src/test/resources/roleDataServiceTest-applicationContext.xml
/trunk/openiam-pojo-services/src/test/resources/securityconf.properties
/trunk/openiam-pojo-services/src/test/resources/userTest-applicationContext.xml
/trunk/openiam-webconsole
/trunk/openiam-webconsole/pom.xml
/trunk/openiam-webconsole/src
/trunk/openiam-webconsole/src/main
/trunk/openiam-webconsole/src/main/config
/trunk/openiam-webconsole/src/main/java
/trunk/openiam-webconsole/src/main/java/org
/trunk/openiam-webconsole/src/main/java/org/openiam
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/access
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/access/PolicyAction.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/AccessIndexAction.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/AdminIndexAction.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/AppConfiguration.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/JSPUtil.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/MenuNavigationAction.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/ProvIndexAction.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/batch
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/batch/BatchTaskCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/batch/BatchTaskDetailController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/batch/BatchTaskListController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/domain
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/domain/DomainController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/domain/SecurityDomainCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/domain/SecurityDomainDetailController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/domain/SecurityDomainListController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/domain/SecurityDomainValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/loc
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/loc/LocationCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/loc/LocationDetailController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/loc/LocationListController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/loc/LocationValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/orgpolicy
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/orgpolicy/OrgPolicyCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/orgpolicy/OrgPolicyDetailController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/orgpolicy/OrgPolicyListController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/sysmsg
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/sysmsg/SysMsgCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/sysmsg/SysMsgDetailController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/admin/sysmsg/SysMsgListController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/conn
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/conn/def
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/conn/def/ConnectorDefinitionDetailCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/conn/def/ConnectorDefinitionDetailController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/conn/def/ConnectorDefinitionDetailValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/conn/def/ConnectorDefinitionListController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/conn/mngsys
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/conn/mngsys/ManagedSysConnectionCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/conn/mngsys/ManagedSysConnectionController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/conn/mngsys/ManagedSysConnectionValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/conn/mngsys/ManagedSysListCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/conn/mngsys/ManagedSysListController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/conn/mngsys/ManagedSysListValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/conn/mngsys/SynchListCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/conn/mngsys/SynchListController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/conn/mngsys/SynchListValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/filter
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/filter/SessionFilter.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/grp
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/grp/GroupDetailCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/grp/GroupDetailController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/grp/GroupDetailValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/grp/GroupListCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/grp/GroupListController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/helper
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/login
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/login/LoginCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/login/LoginController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/login/LoginForm.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/login/LoginValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/login/LogoutAction.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/maint
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/metadata
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/metadata/MetadataAttributeCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/metadata/MetadataAttributeController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/metadata/MetadataAttributeValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/metadata/MetadataTypeCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/metadata/MetadataTypeController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/metadata/MetadataTypeListCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/metadata/MetadataTypeListController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/metadata/MetadataTypeListValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/metadata/MetadataTypeValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/org
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/org/OrgDetailValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/org/OrganizationDetailCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/org/OrganizationDetailController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/org/OrganizationListCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/org/OrganizationListController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/policy
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/policy/attr
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/policy/attr/AssocPasswordPolicyCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/policy/attr/AssocPasswordPolicyController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/policy/attr/AttributePolicyCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/policy/attr/AttributePolicyController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/policy/attr/AttributePolicyListController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/policy/attr/AttributePolicyValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/policy/attr/PolicyDetailCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/policy/attr/PolicyDetailController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/policy/pswd
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/policy/pswd/PasswordPolicyListController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/res
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/res/AttributeMapCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/res/AttributeMapController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/res/AttributeMapValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/res/DeleteAttributeMapController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/res/ReconConfigurationCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/res/ReconConfigurationController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/res/ReconConfigurationValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/res/ResourceApprovalFlowCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/res/ResourceApprovalFlowController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/res/ResourceDetailCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/res/ResourceDetailController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/res/ResourceDetailValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/res/ResourceListCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/res/ResourceListController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/res/ResourceListValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/role
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/role/RoleDetailCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/role/RoleDetailController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/role/RoleDetailValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/role/RoleListCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/role/RoleListController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/role/RoleListValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/role/RoleResourceCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/role/RoleResourceController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/rpt
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/rpt/AccessReportController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/rpt/ReportIndexAction.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/rpt/ReportParamAction.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/rpt/ShowReportAction.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/rpt/audit
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/rpt/audit/AuditReportCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/rpt/audit/AuditReportController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/rpt/audit/AuditReportValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/rpt/audit/GenAuditReportController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/rpt/user
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/rpt/user/InactiveReportCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/rpt/user/InactiveReportController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/rpt/user/InactiveReportValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/rpt/user/UserReportCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/rpt/user/UserReportController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/rpt/user/UserReportValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/sync
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/sync/SynchConfigListController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/sync/SynchConfigurationCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/sync/SynchConfigurationController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/sync/SynchConfigurationValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user/Application.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user/ApproveUserAction.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user/EditUserCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user/EditUserController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user/EditUserValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user/EmailManager.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user/IndexAction.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user/NewUserCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user/NewUserController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user/NewUserValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user/ResetUserPasswordCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user/ResetUserPasswordController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user/ResetUserPasswordValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user/SelectSupervisorController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user/UserChangeStatusCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user/UserChangeStatusController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user/UserGroupCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user/UserGroupController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user/UserHistoryController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user/UserIdentityCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user/UserIdentityController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user/UserIdentityValidator.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user/UserRoleCommand.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user/UserRoleController.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/user/UserSearchAction.java
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/util
/trunk/openiam-webconsole/src/main/java/org/openiam/webadmin/util/JSONResponse.java
/trunk/openiam-webconsole/src/main/resources
/trunk/openiam-webconsole/src/main/resources/log4j.dtd
/trunk/openiam-webconsole/src/main/resources/log4j.xml
/trunk/openiam-webconsole/src/main/resources/messages.properties
/trunk/openiam-webconsole/src/main/resources/org
/trunk/openiam-webconsole/src/main/resources/org/openiam
/trunk/openiam-webconsole/src/main/resources/org/openiam/webadmin
/trunk/openiam-webconsole/src/main/resources/org/openiam/webadmin/access
/trunk/openiam-webconsole/src/main/resources/org/openiam/webadmin/access/ApplicationResources.properties
/trunk/openiam-webconsole/src/main/resources/org/openiam/webadmin/login
/trunk/openiam-webconsole/src/main/resources/org/openiam/webadmin/login/ApplicationResources.properties
/trunk/openiam-webconsole/src/main/resources/org/openiam/webadmin/user
/trunk/openiam-webconsole/src/main/resources/org/openiam/webadmin/user/ApplicationResources.properties
/trunk/openiam-webconsole/src/main/webapp
/trunk/openiam-webconsole/src/main/webapp/WEB-INF
/trunk/openiam-webconsole/src/main/webapp/WEB-INF/action-servlet.xml
/trunk/openiam-webconsole/src/main/webapp/WEB-INF/applicationContext.xml
/trunk/openiam-webconsole/src/main/webapp/WEB-INF/cnt-servlet.xml
/trunk/openiam-webconsole/src/main/webapp/WEB-INF/jboss-web.xml
/trunk/openiam-webconsole/src/main/webapp/WEB-INF/struts-config.xml
/trunk/openiam-webconsole/src/main/webapp/WEB-INF/validator
/trunk/openiam-webconsole/src/main/webapp/WEB-INF/validator/struts-config-i18nVariables.xml
/trunk/openiam-webconsole/src/main/webapp/WEB-INF/validator/struts-config-type.xml
/trunk/openiam-webconsole/src/main/webapp/WEB-INF/validator/struts-config-validwhen.xml
/trunk/openiam-webconsole/src/main/webapp/WEB-INF/validator/validation-bundles.xml
/trunk/openiam-webconsole/src/main/webapp/WEB-INF/validator/validation-i18nVariables.xml
/trunk/openiam-webconsole/src/main/webapp/WEB-INF/validator/validation-type.xml
/trunk/openiam-webconsole/src/main/webapp/WEB-INF/validator/validation-validwhen.xml
/trunk/openiam-webconsole/src/main/webapp/WEB-INF/validator/validation.xml
/trunk/openiam-webconsole/src/main/webapp/WEB-INF/validator/views.xml
/trunk/openiam-webconsole/src/main/webapp/WEB-INF/web.xml
/trunk/openiam-webconsole/src/main/webapp/WEB-INF/webconsoleBeans.xml
/trunk/openiam-webconsole/src/main/webapp/WEB-INF/ws-beans.xml
/trunk/openiam-webconsole/src/main/webapp/adapter
/trunk/openiam-webconsole/src/main/webapp/admin
/trunk/openiam-webconsole/src/main/webapp/admin/index.jsp
/trunk/openiam-webconsole/src/main/webapp/app
/trunk/openiam-webconsole/src/main/webapp/app/applist.jsp
/trunk/openiam-webconsole/src/main/webapp/app/applistcategory.jsp
/trunk/openiam-webconsole/src/main/webapp/app/applistresult.jsp
/trunk/openiam-webconsole/src/main/webapp/blank.jsp
/trunk/openiam-webconsole/src/main/webapp/changepwd.jsp
/trunk/openiam-webconsole/src/main/webapp/confirm.jsp
/trunk/openiam-webconsole/src/main/webapp/connector
/trunk/openiam-webconsole/src/main/webapp/connector/definitiondetail.jsp
/trunk/openiam-webconsole/src/main/webapp/connector/definitionlist.jsp
/trunk/openiam-webconsole/src/main/webapp/del
/trunk/openiam-webconsole/src/main/webapp/del/delegate.jsp
/trunk/openiam-webconsole/src/main/webapp/deleteconfirm.jsp
/trunk/openiam-webconsole/src/main/webapp/detail.jsp
/trunk/openiam-webconsole/src/main/webapp/diamelleapp.css
/trunk/openiam-webconsole/src/main/webapp/dispatcher.jsp
/trunk/openiam-webconsole/src/main/webapp/error
/trunk/openiam-webconsole/src/main/webapp/error/error404.jsp
/trunk/openiam-webconsole/src/main/webapp/error/standardErr.jsp
/trunk/openiam-webconsole/src/main/webapp/expire.jsp
/trunk/openiam-webconsole/src/main/webapp/group
/trunk/openiam-webconsole/src/main/webapp/group/groupdetail.jsp
/trunk/openiam-webconsole/src/main/webapp/group/grplist.jsp
/trunk/openiam-webconsole/src/main/webapp/home
/trunk/openiam-webconsole/src/main/webapp/home/category.jsp
/trunk/openiam-webconsole/src/main/webapp/home/footer.jsp
/trunk/openiam-webconsole/src/main/webapp/home/menubar.jsp
/trunk/openiam-webconsole/src/main/webapp/home/navbar.jsp
/trunk/openiam-webconsole/src/main/webapp/home/permissions.jsp
/trunk/openiam-webconsole/src/main/webapp/home/sidemenu.jsp
/trunk/openiam-webconsole/src/main/webapp/home.jsp
/trunk/openiam-webconsole/src/main/webapp/homelayout.jsp
/trunk/openiam-webconsole/src/main/webapp/idman
/trunk/openiam-webconsole/src/main/webapp/idman/body.jsp
/trunk/openiam-webconsole/src/main/webapp/idman/confirmApproval.jsp
/trunk/openiam-webconsole/src/main/webapp/idman/confirmAssign.jsp
/trunk/openiam-webconsole/src/main/webapp/idman/confirmsave.jsp
/trunk/openiam-webconsole/src/main/webapp/idman/detailtab.jsp
/trunk/openiam-webconsole/src/main/webapp/idman/diamelleapp.css
/trunk/openiam-webconsole/src/main/webapp/idman/index.jsp
/trunk/openiam-webconsole/src/main/webapp/idman/search.jsp
/trunk/openiam-webconsole/src/main/webapp/idman/searchresult.jsp
/trunk/openiam-webconsole/src/main/webapp/images
/trunk/openiam-webconsole/src/main/webapp/images/HEADER.jpg
/trunk/openiam-webconsole/src/main/webapp/images/HEADERsmall.jpg
/trunk/openiam-webconsole/src/main/webapp/images/HEADERsmall1024.jpg
/trunk/openiam-webconsole/src/main/webapp/images/back.jpg
/trunk/openiam-webconsole/src/main/webapp/images/bg.gif
/trunk/openiam-webconsole/src/main/webapp/images/bgcolor2.gif
/trunk/openiam-webconsole/src/main/webapp/images/cal.gif
/trunk/openiam-webconsole/src/main/webapp/images/diamellehead.jpg
/trunk/openiam-webconsole/src/main/webapp/images/foot.jpg
/trunk/openiam-webconsole/src/main/webapp/images/left.gif
/trunk/openiam-webconsole/src/main/webapp/images/left_on.gif
/trunk/openiam-webconsole/src/main/webapp/images/logo.gif
/trunk/openiam-webconsole/src/main/webapp/images/logo.jpg
/trunk/openiam-webconsole/src/main/webapp/images/lowernotch.jpg
/trunk/openiam-webconsole/src/main/webapp/images/lt_tabnotch.gif
/trunk/openiam-webconsole/src/main/webapp/images/menu12.gif
/trunk/openiam-webconsole/src/main/webapp/images/openiamlog.jpg
/trunk/openiam-webconsole/src/main/webapp/images/openiamlogo.jpg
/trunk/openiam-webconsole/src/main/webapp/images/popup.gif
/trunk/openiam-webconsole/src/main/webapp/images/right.gif
/trunk/openiam-webconsole/src/main/webapp/images/right_on.gif
/trunk/openiam-webconsole/src/main/webapp/images/rightnotchdup.jpg
/trunk/openiam-webconsole/src/main/webapp/images/rt_tabnotch.gif
/trunk/openiam-webconsole/src/main/webapp/images/show-calendar.gif
/trunk/openiam-webconsole/src/main/webapp/index.jsp
/trunk/openiam-webconsole/src/main/webapp/log
/trunk/openiam-webconsole/src/main/webapp/log/auditpolicy.jsp
/trunk/openiam-webconsole/src/main/webapp/log/logsearchresult.jsp
/trunk/openiam-webconsole/src/main/webapp/log/searchlog.jsp
/trunk/openiam-webconsole/src/main/webapp/login.jsp
/trunk/openiam-webconsole/src/main/webapp/logout.jsp
/trunk/openiam-webconsole/src/main/webapp/maint
/trunk/openiam-webconsole/src/main/webapp/maint/batchtaskdetail.jsp
/trunk/openiam-webconsole/src/main/webapp/maint/batchtasklist.jsp
/trunk/openiam-webconsole/src/main/webapp/maint/locationdetail.jsp
/trunk/openiam-webconsole/src/main/webapp/maint/locationlist.jsp
/trunk/openiam-webconsole/src/main/webapp/maint/orgpolicydetail.jsp
/trunk/openiam-webconsole/src/main/webapp/maint/orgpolicylist.jsp
/trunk/openiam-webconsole/src/main/webapp/maint/secdomaindetail.jsp
/trunk/openiam-webconsole/src/main/webapp/maint/secdomainlist.jsp
/trunk/openiam-webconsole/src/main/webapp/maint/sysmsgdetail.jsp
/trunk/openiam-webconsole/src/main/webapp/maint/sysmsglist.jsp
/trunk/openiam-webconsole/src/main/webapp/managedsys
/trunk/openiam-webconsole/src/main/webapp/managedsys/synchlist.jsp
/trunk/openiam-webconsole/src/main/webapp/managedsys/sysconnection.jsp
/trunk/openiam-webconsole/src/main/webapp/managedsys/syslist.jsp
/trunk/openiam-webconsole/src/main/webapp/meta
/trunk/openiam-webconsole/src/main/webapp/meta/attr.jsp
/trunk/openiam-webconsole/src/main/webapp/meta/type.jsp
/trunk/openiam-webconsole/src/main/webapp/meta/typelist.jsp
/trunk/openiam-webconsole/src/main/webapp/noaccess.jsp
/trunk/openiam-webconsole/src/main/webapp/org
/trunk/openiam-webconsole/src/main/webapp/org/orgdetail.jsp
/trunk/openiam-webconsole/src/main/webapp/org/orglist.jsp
/trunk/openiam-webconsole/src/main/webapp/policy
/trunk/openiam-webconsole/src/main/webapp/policy/accountpolicy.jsp
/trunk/openiam-webconsole/src/main/webapp/policy/assocPasswordPolicy.jsp
/trunk/openiam-webconsole/src/main/webapp/policy/attrPolicy.jsp
/trunk/openiam-webconsole/src/main/webapp/policy/auditpolicy.jsp
/trunk/openiam-webconsole/src/main/webapp/policy/authnpolicy.jsp
/trunk/openiam-webconsole/src/main/webapp/policy/groupmembers.jsp
/trunk/openiam-webconsole/src/main/webapp/policy/members.jsp
/trunk/openiam-webconsole/src/main/webapp/policy/policyDetail.jsp
/trunk/openiam-webconsole/src/main/webapp/policy/policyList.jsp
/trunk/openiam-webconsole/src/main/webapp/policy/policyattr.jsp
/trunk/openiam-webconsole/src/main/webapp/policy/policyhdr.jsp
/trunk/openiam-webconsole/src/main/webapp/policy/policytab.jsp
/trunk/openiam-webconsole/src/main/webapp/policy/pswdpolicy.jsp
/trunk/openiam-webconsole/src/main/webapp/policydomain
/trunk/openiam-webconsole/src/main/webapp/policydomain/audit.jsp
/trunk/openiam-webconsole/src/main/webapp/policydomain/authenticate.jsp
/trunk/openiam-webconsole/src/main/webapp/policydomain/authrules.jsp
/trunk/openiam-webconsole/src/main/webapp/policydomain/defaultpolicy.jsp
/trunk/openiam-webconsole/src/main/webapp/policydomain/domaintabpane.jsp
/trunk/openiam-webconsole/src/main/webapp/policydomain/list.jsp
/trunk/openiam-webconsole/src/main/webapp/policydomain/policydomain.jsp
/trunk/openiam-webconsole/src/main/webapp/policydomain/resource.jsp
/trunk/openiam-webconsole/src/main/webapp/policydomain/resources.jsp
/trunk/openiam-webconsole/src/main/webapp/report
/trunk/openiam-webconsole/src/main/webapp/report/auditparam.jsp
/trunk/openiam-webconsole/src/main/webapp/report/inactivityParam.jsp
/trunk/openiam-webconsole/src/main/webapp/report/reportlist.jsp
/trunk/openiam-webconsole/src/main/webapp/report/templ
/trunk/openiam-webconsole/src/main/webapp/report/templ/auditreport.jsp
/trunk/openiam-webconsole/src/main/webapp/report/templ/inactivityreport.jsp
/trunk/openiam-webconsole/src/main/webapp/report/templ/userreport.jsp
/trunk/openiam-webconsole/src/main/webapp/report/userparam.jsp
/trunk/openiam-webconsole/src/main/webapp/res
/trunk/openiam-webconsole/src/main/webapp/res/reconconfig.jsp
/trunk/openiam-webconsole/src/main/webapp/res/reconmapping.jsp
/trunk/openiam-webconsole/src/main/webapp/res/resapprover.jsp
/trunk/openiam-webconsole/src/main/webapp/res/resdetail.jsp
/trunk/openiam-webconsole/src/main/webapp/res/reslist.jsp
/trunk/openiam-webconsole/src/main/webapp/res/resmap.jsp
/trunk/openiam-webconsole/src/main/webapp/resource.jsp
/trunk/openiam-webconsole/src/main/webapp/resourceprop.jsp
/trunk/openiam-webconsole/src/main/webapp/resourceprops.jsp
/trunk/openiam-webconsole/src/main/webapp/resources
/trunk/openiam-webconsole/src/main/webapp/resources/images
/trunk/openiam-webconsole/src/main/webapp/resources/images/gray
/trunk/openiam-webconsole/src/main/webapp/resources/images/vista
/trunk/openiam-webconsole/src/main/webapp/resources.jsp
/trunk/openiam-webconsole/src/main/webapp/resourcetype.jsp
/trunk/openiam-webconsole/src/main/webapp/resourcetypes.jsp
/trunk/openiam-webconsole/src/main/webapp/role
/trunk/openiam-webconsole/src/main/webapp/role/roledetail.jsp
/trunk/openiam-webconsole/src/main/webapp/role/rolelist.jsp
/trunk/openiam-webconsole/src/main/webapp/role/roleresource.jsp
/trunk/openiam-webconsole/src/main/webapp/security
/trunk/openiam-webconsole/src/main/webapp/security/addservice.jsp
/trunk/openiam-webconsole/src/main/webapp/security/body.jsp
/trunk/openiam-webconsole/src/main/webapp/security/defaultbody.jsp
/trunk/openiam-webconsole/src/main/webapp/security/detailtab.jsp
/trunk/openiam-webconsole/src/main/webapp/security/diamelleapp.css
/trunk/openiam-webconsole/src/main/webapp/security/error.jsp
/trunk/openiam-webconsole/src/main/webapp/security/errorpage.jsp
/trunk/openiam-webconsole/src/main/webapp/security/header.jsp
/trunk/openiam-webconsole/src/main/webapp/security/index.jsp
/trunk/openiam-webconsole/src/main/webapp/security/jmstest.jsp
/trunk/openiam-webconsole/src/main/webapp/security/languageselect.jsp
/trunk/openiam-webconsole/src/main/webapp/security/menu.jsp
/trunk/openiam-webconsole/src/main/webapp/security/menus.jsp
/trunk/openiam-webconsole/src/main/webapp/security/permissionlist.jsp
/trunk/openiam-webconsole/src/main/webapp/security/policies.jsp
/trunk/openiam-webconsole/src/main/webapp/security/policy.jsp
/trunk/openiam-webconsole/src/main/webapp/security/service.jsp
/trunk/openiam-webconsole/src/main/webapp/security/servicelist.jsp
/trunk/openiam-webconsole/src/main/webapp/security/services.jsp
/trunk/openiam-webconsole/src/main/webapp/security/template.jsp
/trunk/openiam-webconsole/src/main/webapp/security/userlist.jsp
/trunk/openiam-webconsole/src/main/webapp/security/welcome.jsp
/trunk/openiam-webconsole/src/main/webapp/service
/trunk/openiam-webconsole/src/main/webapp/service/result.jsp
/trunk/openiam-webconsole/src/main/webapp/service/service.jsp
/trunk/openiam-webconsole/src/main/webapp/service/services.jsp
/trunk/openiam-webconsole/src/main/webapp/success.jsp
/trunk/openiam-webconsole/src/main/webapp/sync
/trunk/openiam-webconsole/src/main/webapp/sync/syncconfig.jsp
/trunk/openiam-webconsole/src/main/webapp/sync/synchconfiglist.jsp
/trunk/openiam-webconsole/src/main/webapp/sync/syncmapping.jsp
/trunk/openiam-webconsole/src/main/webapp/user
/trunk/openiam-webconsole/src/main/webapp/user/adduser.jsp
/trunk/openiam-webconsole/src/main/webapp/user/changestatus.jsp
/trunk/openiam-webconsole/src/main/webapp/user/dialogshell.jsp
/trunk/openiam-webconsole/src/main/webapp/user/edituser.jsp
/trunk/openiam-webconsole/src/main/webapp/user/pswdchange.jsp
/trunk/openiam-webconsole/src/main/webapp/user/selsupervisor.jsp
/trunk/openiam-webconsole/src/main/webapp/user/userapps.jsp
/trunk/openiam-webconsole/src/main/webapp/user/usererror.jsp
/trunk/openiam-webconsole/src/main/webapp/user/usergroup.jsp
/trunk/openiam-webconsole/src/main/webapp/user/userhist.jsp
/trunk/openiam-webconsole/src/main/webapp/user/useridentity.jsp
/trunk/openiam-webconsole/src/main/webapp/user/userrole.jsp
/trunk/openiam-webconsole/src/main/webapp/user/usertype.jsp
/trunk/openiam-webconsole/src/main/webapp/welcome.jsp
/trunk/openiam-webconsole/src/test
/trunk/openiam-webconsole/src/test/java
/trunk/openiam-webconsole/src/test/resources
/trunk/pojo-ws
/trunk/pojo-ws/pom.xml
/trunk/pojo-ws/soap-ui-test
/trunk/pojo-ws/soap-ui-test/AuditService-soapui-project.xml
/trunk/pojo-ws/soap-ui-test/AuthenticationService-soapui-project.xml
/trunk/pojo-ws/soap-ui-test/AuthenticationTokenTest-soapui-project.xml
/trunk/pojo-ws/soap-ui-test/EmailWebService-wsdl-soapui-project.xml
/trunk/pojo-ws/soap-ui-test/GroupDataService-soapui-project.xml
/trunk/pojo-ws/soap-ui-test/LocationDataWebService-soapui-project.xml
/trunk/pojo-ws/soap-ui-test/LoginDataService-soapui-project.xml
/trunk/pojo-ws/soap-ui-test/LoginDataWebService-soapui-project.xml
/trunk/pojo-ws/soap-ui-test/MetadataWebService-soapui-project.xml
/trunk/pojo-ws/soap-ui-test/NavigationDataService-soapui-project.xml
/trunk/pojo-ws/soap-ui-test/OrganizationDataService-soapui-project.xml
/trunk/pojo-ws/soap-ui-test/PasswordWebService-soapui-project.xml
/trunk/pojo-ws/soap-ui-test/QueryDataWebService-soapui-project.xml
/trunk/pojo-ws/soap-ui-test/QueryDataWebService2-soapui-project.xml
/trunk/pojo-ws/soap-ui-test/RoleDataService-soapui-project.xml
/trunk/pojo-ws/soap-ui-test/UserDataService-WsSecurity-soapui-project.xml
/trunk/pojo-ws/soap-ui-test/UserDataService-soapui-project.xml
/trunk/pojo-ws/soap-ui-test/UserDataServiceSearch-soapui-project.xml
/trunk/pojo-ws/soap-ui-test/UserSearch-soapui-project.xml
/trunk/pojo-ws/soap-ui-test/soap-ui-test-workspace.xml
/trunk/pojo-ws/soap-ui-test/soap-ui-test.zip
/trunk/pojo-ws/src
/trunk/pojo-ws/src/main
/trunk/pojo-ws/src/main/java
/trunk/pojo-ws/src/main/java/org
/trunk/pojo-ws/src/main/java/org/openiam
/trunk/pojo-ws/src/main/java/org/openiam/idm
/trunk/pojo-ws/src/main/java/org/openiam/idm/srvc
/trunk/pojo-ws/src/main/java/org/openiam/idm/ws
/trunk/pojo-ws/src/main/java/org/openiam/idm/ws/adapters
/trunk/pojo-ws/src/main/java/org/openiam/idm/ws/adapters/CalendarAdapter.java
/trunk/pojo-ws/src/main/java/org/openiam/idm/ws/adapters/DateAdapter.java
/trunk/pojo-ws/src/main/java/org/openiam/idm/ws/adapters/OrganizationAttributeSetAdapter.java
/trunk/pojo-ws/src/main/java/org/openiam/idm/ws/adapters/UserAttributeSetAdapter.java
/trunk/pojo-ws/src/main/java/org/openiam/ws
/trunk/pojo-ws/src/main/resources
/trunk/pojo-ws/src/main/webapp
/trunk/pojo-ws/src/main/webapp/WEB-INF
/trunk/pojo-ws/src/main/webapp/WEB-INF/jboss-web.xml
/trunk/pojo-ws/src/main/webapp/WEB-INF/web.xml
/trunk/pojo-ws/src/main/webapp/WEB-INF/ws-beans.xml
/trunk/pojo-ws/src/main/webapp/WEB-INF/wsdl
/trunk/pojo-ws/src/main/webapp/WEB-INF/wsdl/GroupDataService.wsdl
/trunk/pojo-ws/src/main/webapp/WEB-INF/wsdl/OrganizationDataService.wsdl
/trunk/pojo-ws/src/main/webapp/WEB-INF/wsdl/RoleDataService.wsdl
/trunk/pojo-ws/src/main/webapp/WEB-INF/wsdl/UserDataService.wsdl
/trunk/pojo-ws/src/main/webapp/WEB-INF/wsdl/UserDataService.xjb
/trunk/pojo-ws/src/main/webapp/WEB-INF/wsdl/binding.xml
/trunk/pojo-ws/src/main/webapp/WEB-INF/wsdl/continfo.xsd
/trunk/pojo-ws/src/main/webapp/WEB-INF/wsdl/group.xsd
/trunk/pojo-ws/src/main/webapp/WEB-INF/wsdl/metadata.xsd
/trunk/pojo-ws/src/main/webapp/WEB-INF/wsdl/organization.xsd
/trunk/pojo-ws/src/main/webapp/WEB-INF/wsdl/role.xsd
/trunk/pojo-ws/src/main/webapp/WEB-INF/wsdl/user.xsd
/trunk/pojo-ws/src/test
/trunk/pojo-ws/src/test/java
/trunk/pojo-ws/src/test/java/org
/trunk/pojo-ws/src/test/java/org/openiam
/trunk/pojo-ws/src/test/java/org/openiam/idm
/trunk/pojo-ws/src/test/java/org/openiam/idm/srvc
/trunk/pojo-ws/src/test/java/org/openiam/idm/srvc/UserServiceTest.java
/trunk/pojo-ws/src/test/java/org/openiam/srvc
/trunk/pojo-ws/src/test/java/org/openiam/srvc/auth
/trunk/pojo-ws/src/test/java/org/openiam/srvc/grp
/trunk/pojo-ws/src/test/java/org/openiam/srvc/grp/GroupServiceTest.java
/trunk/pojo-ws/src/test/java/org/openiam/srvc/org
/trunk/pojo-ws/src/test/resources
/trunk/pojo-ws/src/test/resources/client-beans.xml
/trunk/pojo-ws/src/test/resources/hello-client-beans.xml
/trunk/schema-idm
/trunk/schema-idm/rdbms
/trunk/schema-idm/rdbms/mysql_idm_data.sql
/trunk/schema-idm/rdbms/mysql_idm_dbcreate.sql
/trunk/schema-idm/rdbms/mysql_idm_ee_data.sql
/trunk/schema-idm/rdbms/mysql_schema_common.sql
/trunk/schema-idm/rdbms/mysql_schema_security.sql
=======================================
--- /dev/null
+++ /trunk/iam-interceptor/pom.xml Wed Jun 9 22:23:19 2010
@@ -0,0 +1,167 @@
+<?xml version="1.0" encoding="UTF-8"?><project>
+ <parent>
+ <artifactId>openiam</artifactId>
+ <groupId>org.openiam</groupId>
+ <version>2.1.0</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.openiam</groupId>
+ <artifactId>iam-interceptor</artifactId>
+ <name>iam-interceptor</name>
+ <version>2.1.0</version>
+ <description>Interceptors used in the openiam stack</description>
+ <developers>
+ <developer>
+ <id>Arun_Shah</id>
+ <name>Arun Shah</name>
+ <email>
arun...@openiam.com</email>
+ </developer>
+ <developer>
+ <id>Suneet_shah</id>
+ <name>Suneet Shah</name>
+ <email>
sunee...@openiam.com</email>
+ </developer>
+ </developers>
+ <reporting>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <configuration>
+ <doctitle>OpenIAM Java Services API v2</doctitle>
+ <windowtitle>OpenIAM Java Documentation</windowtitle>
+ </configuration>
+ </plugin>
+ </plugins>
+ </reporting>
+
+ <build>
+ <resources>
+ <resource>
+ <directory>src/main/resources</directory>
+ <excludes>
+ <exclude>**/*.properties</exclude>
+ </excludes>
+ </resource>
+ <resource>
+ <directory>src/test/resources</directory>
+ <excludes>
+ <exclude>**/*.properties</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ <plugins>
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.5</source>
+ <target>1.5</target>
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <reportFormat>brief</reportFormat>
+ <useFile>false</useFile>
+ <includes>
+ <include>**/*Test.java</include>
+ </includes>
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-jar-plugin</artifactId>
+ <version>2.0</version>
+ <executions>
+ <execution>
+ <id>service</id>
+ <phase>compile</phase>
+ <goals>
+ <goal>jar</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>cobertura-maven-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+ <dependencies>
+ <dependency>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ <version>1.2.15</version>
+ <scope>provided</scope>
+ <exclusions>
+ <exclusion>
+ <artifactId>jms</artifactId>
+ <groupId>javax.jms</groupId>
+ </exclusion>
+ <exclusion>
+ <artifactId>jmxri</artifactId>
+ <groupId>com.sun.jmx</groupId>
+ </exclusion>
+ <exclusion>
+ <artifactId>jmxtools</artifactId>
+ <groupId>com.sun.jdmk</groupId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ <version>1.5.8</version>
+ </dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-jdk14</artifactId>
+ <version>1.5.8</version>
+ </dependency>
+
+
+
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-core</artifactId>
+ <version>${springVersion}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.xml.bind</groupId>
+ <artifactId>jaxb-api</artifactId>
+ <version>2.1</version>
+ </dependency>
+ <dependency>
+ <groupId>
javax.xml.ws</groupId>
+ <artifactId>jaxws-api</artifactId>
+ <version>2.1</version>
+ </dependency>
+
+
+ <dependency>
+ <groupId>org.apache.geronimo.specs</groupId>
+ <artifactId>geronimo-ws-metadata_2.0_spec</artifactId>
+ <version>1.1.2</version>
+ <optional>true</optional>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.cxf</groupId>
+ <artifactId>cxf-rt-ws-security</artifactId>
+ <version>${cxf.version}</version>
+ <optional>true</optional>
+ </dependency>
+
+
+
+ </dependencies>
+ <properties>
+ <springVersion>2.5.5</springVersion>
+ <cxf.version>2.2.4</cxf.version>
+ </properties>
+</project>
=======================================
--- /dev/null
+++
/trunk/iam-interceptor/src/main/java/org/openiam/intercept/wssec/SecurityUtil.java
Wed Jun 9 22:23:19 2010
@@ -0,0 +1,271 @@
+/*
+ * Copyright 2009, OpenIAM LLC
+ * This file is part of the OpenIAM Identity and Access Management Suite
+ *
+ * OpenIAM Identity and Access Management Suite is free software:
+ * you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License
+ * version 3 as published by the Free Software Foundation.
+ *
+ * OpenIAM is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * Lesser GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with OpenIAM. If not, see <
http://www.gnu.org/licenses/>. *
+ */
+
+/**
+ *
+ */
+package org.openiam.intercept.wssec;
+
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.Vector;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.ws.security.SOAP11Constants;
+import org.apache.ws.security.SOAP12Constants;
+import org.apache.ws.security.SOAPConstants;
+import org.apache.ws.security.WSSecurityException;
+import org.apache.ws.security.util.StringUtil;
+import org.w3c.dom.Attr;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+import org.w3c.dom.NamedNodeMap;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+import org.w3c.dom.Text;
+/**
+ * Utilities used by the WS-Security interceptor
+ * @author suneet
+ *
+ */
+public class SecurityUtil {
+
+ private static final Log log= LogFactory.getLog(SecurityUtil.class);
+
+ public static int decodeAction(String action, Vector actions) throws
WSSecurityException {
+
+ int doAction = 0;
+ if (action == null) {
+ return doAction;
+ }
+ String single[] = StringUtil.split(action, ' ');
+ for (int i = 0; i < single.length; i++) {
+ if (single[i].equals(WSHandlerConstants.NO_SECURITY)) {
+ doAction = WSConstants.NO_SECURITY;
+ return doAction;
+ } else if
(single[i].equals(WSHandlerConstants.USERNAME_TOKEN)) {
+ doAction |= WSConstants.UT;
+ actions.add(new Integer(WSConstants.UT));
+ } else if (single[i].equals(WSHandlerConstants.SIGNATURE)) {
+ doAction |= WSConstants.SIGN;
+ actions.add(new Integer(WSConstants.SIGN));
+ } else if (single[i].equals(WSHandlerConstants.ENCRYPT)) {
+ doAction |= WSConstants.ENCR;
+ actions.add(new Integer(WSConstants.ENCR));
+ } else if
(single[i].equals(WSHandlerConstants.SAML2_TOKEN_UNSIGNED)) {
+ doAction |= WSConstants.ST_UNSIGNED;
+ actions.add(new Integer(WSConstants.ST_UNSIGNED));
+ } else if
(single[i].equals(WSHandlerConstants.SAML_TOKEN_UNSIGNED)) {
+ doAction |= WSConstants.ST_UNSIGNED;
+ actions.add(new Integer(WSConstants.ST_UNSIGNED));
+ } else if
(single[i].equals(WSHandlerConstants.SAML_TOKEN_SIGNED)) {
+ doAction |= WSConstants.ST_SIGNED;
+ actions.add(new Integer(WSConstants.ST_SIGNED));
+ } else if (single[i].equals(WSHandlerConstants.TIMESTAMP)) {
+ doAction |= WSConstants.TS;
+ actions.add(new Integer(WSConstants.TS));
+ } else if
(single[i].equals(WSHandlerConstants.NO_SERIALIZATION)) {
+ doAction |= WSConstants.NO_SERIALIZE;
+ actions.add(new Integer(WSConstants.NO_SERIALIZE));
+ } else if
(single[i].equals(WSHandlerConstants.SIGN_WITH_UT_KEY)) {
+ doAction |= WSConstants.UT_SIGN;
+ actions.add(new Integer(WSConstants.UT_SIGN));
+ } else if
(single[i].equals(WSHandlerConstants.ENABLE_SIGNATURE_CONFIRMATION)) {
+ doAction |= WSConstants.SC;
+ actions.add(new Integer(WSConstants.SC));
+ } else {
+ throw new WSSecurityException(
+ "Unknown action defined: " + single[i]
+ );
+ }
+ }
+ return doAction;
+ }
+
+ public static boolean isSamlAssertionValid(Document doc) {
+ SOAPConstants sc =
SecurityUtil.getSOAPConstants(doc.getDocumentElement());
+ SimpleDateFormat df = new
SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.S'Z'");
+
+ Element soapHeaderElement =
+ (Element) getDirectChild(
+ doc.getDocumentElement(),
+ sc.getHeaderQName().getLocalPart(),
+ sc.getEnvelopeURI()
+ );
+ if (soapHeaderElement == null) { // no SOAP header at all
+
log.info("SoapHeaderElement is null");
+ return false;
+ }
+
+ NodeList list =
+
soapHeaderElement.getElementsByTagNameNS("urn:oasis:names:tc:SAML:2.0:assertion", "Assertion");
+ if (list == null) {
+
log.info("Assertion block is missing");
+ return false;
+ }
+
+ list =
+
soapHeaderElement.getElementsByTagNameNS("urn:oasis:names:tc:SAML:2.0:assertion", "Subject");
+ if (list == null) {
+
log.info("Subject block is missing");
+ return false;
+ }
+
+ // check if the conditions statement is there
+ list =
+
soapHeaderElement.getElementsByTagNameNS("urn:oasis:names:tc:SAML:2.0:assertion", "Conditions");
+ if (list == null) {
+
log.info("Conditions block is missing");
+ return false;
+ }
+ // check the time on the conditions
+ for (int i = 0; i < list.getLength(); i++) {
+ Element elem = (Element) list.item(i);
+
log.info("Element=" + elem.getNodeName());
+
log.info("NotBefore=" + elem.getAttribute("NotBefore"));
+
log.info("NotAfter=" + elem.getAttribute("NotOnOrAfter"));
+ try {
+ Date notBefore = df.parse(elem.getAttribute("NotBefore"));
+ Date notAfter = df.parse(elem.getAttribute("NotOnOrAfter"));
+
+ Date curTime = new Date(System.currentTimeMillis());
+ if ( dateDiff(curTime, notBefore) < 0 ) {
+ return false;
+ }
+ if ( dateDiff(curTime, notAfter) > 0) {
+ return false;
+ }
+
+
+ }catch(ParseException pe) {
+ pe.printStackTrace();
+ log.error(pe);
+ }
+
+ }
+
+ // check if the authentication statement is there.
+
+ list =
+
soapHeaderElement.getElementsByTagNameNS("urn:oasis:names:tc:SAML:2.0:assertion", "AuthnStatement");
+ if (list == null) {
+
log.info("AuthnStatement block is missing");
+ return false;
+ }
+
+ return true;
+
+ }
+
+ static public long dateDiff(Date curDate, Date targetDate) {
+
+
+ long curTime = curDate.getTime();
+ long targetTime = targetDate.getTime();
+
+ return curTime - targetTime;
+
+
+
+ }
+
+ public static Element getSecurityHeader(Document doc, String actor,
SOAPConstants sc) {
+ Element soapHeaderElement =
+ (Element) getDirectChild(
+ doc.getDocumentElement(),
+ sc.getHeaderQName().getLocalPart(),
+ sc.getEnvelopeURI()
+ );
+
+
log.info("getSecurityHeader: actor=" + actor);
+
+ if (soapHeaderElement == null) { // no SOAP header at all
+
log.info("SoapHeaderElement is null");
+ return null;
+ }
+
+ // get all wsse:Security nodes
+ NodeList list =
+ soapHeaderElement.getElementsByTagNameNS(WSConstants.WSSE_NS,
WSConstants.WSSE_LN);
+ if (list == null) {
+ return null;
+ }
+
log.info("getSecurityHeader: nodeList is not null");
+
log.info("getSecurityHeader: nodeList lenght is: " +
list.getLength());
+ for (int i = 0; i < list.getLength(); i++) {
+ Element elem = (Element) list.item(i);
+ Attr attr =
+ elem.getAttributeNodeNS(
+ sc.getEnvelopeURI(),
sc.getRoleAttributeQName().getLocalPart()
+ );
+ String hActor = (attr != null) ? attr.getValue() : null;
+
+
log.info("hActor=" + hActor);
+ return elem;
+
+ //if (SecurityUtil.isActorEqual(actor, hActor)) {
+ //?? return elem;
+ // }
+ }
+ return null;
+ }
+
+ public static Node getDirectChild(
+ Node fNode,
+ String localName,
+ String namespace
+ ) {
+ for (
+ Node currentChild = fNode.getFirstChild();
+ currentChild != null;
+ currentChild = currentChild.getNextSibling()
+ ) {
+ if (localName.equals(currentChild.getLocalName())
+ && namespace.equals(currentChild.getNamespaceURI())) {
+ return currentChild;
+ }
+ }
+ return null;
+ }
+
+ public static boolean isActorEqual(String actor, String hActor) {
+
+ if (((hActor == null) || (hActor.length() == 0))
+ && ((actor == null) || (actor.length() == 0))) {
+ return true;
+ }
+
+ if ((hActor != null) && (actor != null) &&
hActor.equalsIgnoreCase(actor)) {
+ return true;
+ }
+
+ return false;
+ }
+
+ public static SOAPConstants getSOAPConstants(Element startElement) {
+ Document doc = startElement.getOwnerDocument();
+ String ns = doc.getDocumentElement().getNamespaceURI();
+ if (WSConstants.URI_SOAP12_ENV.equals(ns)) {
+ return new SOAP12Constants();
+ }
+ return new SOAP11Constants();
+ }
+
+}
=======================================
--- /dev/null
+++
/trunk/iam-interceptor/src/main/java/org/openiam/intercept/wssec/ServerPasswordCallback.java
Wed Jun 9 22:23:19 2010
@@ -0,0 +1,53 @@
+/*
+ * Copyright 2009, OpenIAM LLC
+ * This file is part of the OpenIAM Identity and Access Management Suite
+ *
+ * OpenIAM Identity and Access Management Suite is free software:
+ * you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License
+ * version 3 as published by the Free Software Foundation.
+ *
+ * OpenIAM is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * Lesser GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with OpenIAM. If not, see <
http://www.gnu.org/licenses/>. *
+ */
+
+/**
+ *
+ */
+package org.openiam.intercept.wssec;
+
+import java.io.IOException;
+import javax.security.auth.callback.Callback;
+import javax.security.auth.callback.CallbackHandler;
+import javax.security.auth.callback.UnsupportedCallbackException;
+import org.apache.ws.security.WSPasswordCallback;
+
+
+/**
+ * @author suneet
+ *
+ */
+public class ServerPasswordCallback implements CallbackHandler {
+
+ public void handle(Callback[] callbacks) throws IOException,
UnsupportedCallbackException {
+
+ System.out.println("ServerPasswordCallback called...1");
+ WSPasswordCallback pc = (WSPasswordCallback) callbacks[0];
+
+ System.out.println("Identitier=" + pc.getIdentifier());
+ System.out.println("Identitier=" + pc.getCustomToken());
+
+ if (pc.getIdentifier().equals("joe")) {
+ // set the password on the callback. This will be compared to
the
+ // password which was sent from the client.
+ pc.setPassword("password");
+ }
+ }
+
+
+}
=======================================
--- /dev/null
+++
/trunk/iam-interceptor/src/main/java/org/openiam/intercept/wssec/WSConstants.java
Wed Jun 9 22:23:19 2010
@@ -0,0 +1,503 @@
+package org.openiam.intercept.wssec;
+
+import javax.xml.namespace.QName;
+
+import org.apache.xml.security.c14n.Canonicalizer;
+import org.apache.xml.security.signature.XMLSignature;
+import org.apache.xml.security.utils.EncryptionConstants;
+
+/**
+ * Constants in WS-Security spec.
+ */
+public class WSConstants {
+ /*
+ * All the various string and keywords required.
+ *
+ * At first the WSS namespaces as per WSS specifications
+ */
+ public static final String WSSE_NS
= "
http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd";
+ public static final String WSSE11_NS
= "
http://docs.oasis-open.org/wss/oasis-wss-wssecurity-secext-1.1.xsd";
+ public static final String WSU_NS
= "
http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd";
+
+ /*
+ * The base UIRs for the various profiles.
+ */
+ public static final String SOAPMESSAGE_NS
= "
http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0";
+ public static final String SOAPMESSAGE_NS11
= "
http://docs.oasis-open.org/wss/oasis-wss-soap-message-security-1.1";
+ public static final String USERNAMETOKEN_NS
= "
http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0";
+ public static final String X509TOKEN_NS
= "
http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0";
+ public static final String SAMLTOKEN_NS
= "
http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.0";
+ /*
+ * The Element name (local name) of the security header
+ */
+ public static final String WSSE_LN = "Security";
+
+ /*
+ * The Thumbprint relative URI string (without #)
+ * Combine it with SOAPMESSAGE_NS11, #, to get the full URL
+ */
+ public static final String THUMBPRINT ="ThumbprintSHA1";
+
+ /*
+ * The SAMLAssertionID relative URI string (without #)
+ */
+ public static final String SAML_ASSERTION_ID = "SAMLAssertionID";
+
+ /*
+ * The EncryptedKeyToken value type URI used in wsse:Reference
+ */
+ public static final String ENC_KEY_VALUE_TYPE = "EncryptedKey";
+
+ /*
+ * The relative URI to be used for encrypted key SHA1 (Without #)
+ * Combine it with SOAPMESSAGE_NS11, #, to get the full URL
+ */
+ public static final String ENC_KEY_SHA1_URI = "EncryptedKeySHA1";
+
+ /*
+ * The namespace prefixes used. We uses the same prefix convention
+ * as shown in the specifications
+ */
+ public static final String WSSE_PREFIX = "wsse";
+ public static final String WSSE11_PREFIX = "wsse11";
+ public static final String WSU_PREFIX = "wsu";
+ public static final String DEFAULT_SOAP_PREFIX = "soapenv";
+
+ /*
+ * Now the namespaces, local names, and prefixes of XML-SIG and XML-ENC
+ */
+ public static final String SIG_NS
= "
http://www.w3.org/2000/09/xmldsig#";
+ public static final String SIG_PREFIX = "ds";
+ public static final String SIG_LN = "Signature";
+ public static final String ENC_NS
= "
http://www.w3.org/2001/04/xmlenc#";
+ public static final String ENC_PREFIX = "xenc";
+ public static final String ENC_KEY_LN = "EncryptedKey";
+ public static final String ENC_DATA_LN = "EncryptedData";
+ public static final String REF_LIST_LN = "ReferenceList";
+
+ /*
+ * The standard namespace definitions
+ */
+ public static final String XMLNS_NS = "
http://www.w3.org/2000/xmlns/";
+ public static final String XML_NS
= "
http://www.w3.org/XML/1998/namespace";
+
+ /*
+ * The local names and attribute names used by WSS
+ */
+ public static final String USERNAME_TOKEN_LN = "UsernameToken";
+ public static final String BINARY_TOKEN_LN = "BinarySecurityToken";
+ public static final String TIMESTAMP_TOKEN_LN = "Timestamp";
+ public static final String USERNAME_LN = "Username";
+ public static final String PASSWORD_LN = "Password";
+ public static final String PASSWORD_TYPE_ATTR = "Type";
+ public static final String NONCE_LN = "Nonce";
+ public static final String CREATED_LN = "Created";
+ public static final String EXPIRES_LN = "Expires";
+ public static final String SIGNATURE_CONFIRMATION_LN
= "SignatureConfirmation";
+ public static final String SALT_LN = "Salt";
+ public static final String ITERATION_LN = "Iteration";
+
+ /*
+ * The definitions for SAML
+ */
+ public static final String SAML_NS
= "urn:oasis:names:tc:SAML:1.0:assertion";
+ public static final String SAMLP_NS
= "urn:oasis:names:tc:SAML:1.0:protocol";
+ public static final String ASSERTION_LN = "Assertion";
+ public static final String WSS_SAML_NS
= "
http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.0#";
+ public static final String WSS_SAML_ASSERTION = "SAMLAssertion-1.1";
+ public static final String WSS_SAML_KI_VALUE_TYPE = WSS_SAML_NS +
SAML_ASSERTION_ID;
+
+ /*
+ * The definitions for SAML V2.0
+ */
+ public static final String SAML2_NS
= "urn:oasis:names:tc:SAML:2.0:assertion";
+ public static final String SAMLP2_NS
= "urn:oasis:names:tc:SAML:2.0:protocol";
+ public static final String WSS_SAML2_ASSERTION
= "SAMLAssertion-2.0";
+
+ //
+ // SOAP-ENV Namespaces
+ //
+ public static final String URI_SOAP11_ENV =
+ "
http://schemas.xmlsoap.org/soap/envelope/";
+ public static final String URI_SOAP12_ENV =
+ "
http://www.w3.org/2003/05/soap-envelope";
+
+ public static final String[] URIS_SOAP_ENV = {
+ URI_SOAP11_ENV,
+ URI_SOAP12_ENV,
+ };
+
+ // Misc SOAP Namespaces / URIs
+ public static final String URI_SOAP11_NEXT_ACTOR =
+ "
http://schemas.xmlsoap.org/soap/actor/next";
+ public static final String URI_SOAP12_NEXT_ROLE =
+ "
http://www.w3.org/2003/05/soap-envelope/role/next";
+ public static final String URI_SOAP12_NONE_ROLE =
+ "
http://www.w3.org/2003/05/soap-envelope/role/none";
+ public static final String URI_SOAP12_ULTIMATE_ROLE =
+ "
http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver";
+
+ public static final String ELEM_ENVELOPE = "Envelope";
+ public static final String ELEM_HEADER = "Header";
+ public static final String ELEM_BODY = "Body";
+
+ public static final String ATTR_MUST_UNDERSTAND = "mustUnderstand";
+ public static final String ATTR_ACTOR = "actor";
+ public static final String ATTR_ROLE = "role";
+
+ public static final String NULL_NS = "Null";
+ /**
+ * Sets the {@link
org.apache.ws.security.message.WSSAddUsernameToken#build(Document, String,
String) UserNameToken}
+ * method to use a password digest to send the password information
+ * <p/>
+ * This is a required method as defined by WS Specification, Username
token profile.
+ */
+ public static final String PW_DIGEST = "PasswordDigest";
+ /*
+ * The password type URI used in the username token
+ */
+ public static final String PASSWORD_DIGEST = USERNAMETOKEN_NS
+ "#PasswordDigest";
+
+ /**
+ * Sets the {@link
org.apache.ws.security.message.WSSAddUsernameToken#build(Document, String,
String) UserNameToken}
+ * method to send the password in clear
+ * <p/>
+ * This is a required method as defined by WS Specification, Username
token profile.
+ */
+ public static final String PW_TEXT = "PasswordText";
+ /*
+ * The password type URI used in the username token
+ */
+ public static final String PASSWORD_TEXT = USERNAMETOKEN_NS
+ "#PasswordText";
+
+ /**
+ * Sets the {@link
org.apache.ws.security.message.WSSAddUsernameToken#build(Document, String,
String) UserNameToken}
+ * method to send _no_ password related information.
+ * <p/>
+ * This is a required method as defined by WS Specification, Username
token profile as passwords are optional.
+ * Also see the WS-I documentation for scenario's using this feature
in a trust environment.
+ */
+ public static final String PW_NONE = "PasswordNone";
+
+ /**
+ * Sets the {@link
org.apache.ws.security.message.WSEncryptBody#build(Document, Crypto)
encryption}
+ * method to encrypt the symmetric data encryption key with the RSA
algorithm.
+ * <p/>
+ * This is a required method as defined by XML encryption.
+ */
+ public static final String KEYTRANSPORT_RSA15 =
EncryptionConstants.ALGO_ID_KEYTRANSPORT_RSA15;
+
+ /**
+ * Sets the {@link
org.apache.ws.security.message.WSEncryptBody#build(Document, Crypto)
encryption}
+ * method to encrypt the symmetric data encryption key with the RSA
algorithm.
+ * <p/>
+ * This is a required method as defined by XML encryption.
+ * <p/>
+ * NOTE: This algorithm is not yet supported by WSS4J
+ */
+ public static final String KEYTRANSPORT_RSAOEP =
EncryptionConstants.ALGO_ID_KEYTRANSPORT_RSAOAEP;
+
+ /**
+ * Sets the {@link
org.apache.ws.security.message.WSEncryptBody#build(Document, Crypto)
encryption}
+ * method to use triple DES as the symmetric algorithm to encrypt data.
+ * <p/>
+ * This is a required method as defined by XML encryption.
+ * The String to use in WSDD file (in accordance to w3c specifications:
+ * <br/>
+ *
http://www.w3.org/2001/04/xmlenc#tripledes-cbc
+ */
+ public static final String TRIPLE_DES =
EncryptionConstants.ALGO_ID_BLOCKCIPHER_TRIPLEDES;
+
+ /**
+ * Sets the {@link
org.apache.ws.security.message.WSEncryptBody#build(Document, Crypto)
encryption}
+ * method to use AES with 128 bit key as the symmetric algorithm to
encrypt data.
+ * <p/>
+ * This is a required method as defined by XML encryption.
+ * The String to use in WSDD file (in accordance to w3c specifications:
+ * <br/>
+ *
http://www.w3.org/2001/04/xmlenc#aes128-cbc
+ */
+ public static final String AES_128 =
EncryptionConstants.ALGO_ID_BLOCKCIPHER_AES128;
+
+ /**
+ * Sets the {@link
org.apache.ws.security.message.WSEncryptBody#build(Document, Crypto)
encryption}
+ * method to use AES with 256 bit key as the symmetric algorithm to
encrypt data.
+ * <p/>
+ * This is a required method as defined by XML encryption.
+ * The String to use in WSDD file (in accordance to w3c specifications:
+ * <br/>
+ *
http://www.w3.org/2001/04/xmlenc#aes256-cbc
+ */
+ public static final String AES_256 =
EncryptionConstants.ALGO_ID_BLOCKCIPHER_AES256;
+
+ /**
+ * Sets the {@link
org.apache.ws.security.message.WSEncryptBody#build(Document, Crypto)
encryption}
+ * method to use AES with 192 bit key as the symmetric algorithm to
encrypt data.
+ * <p/>
+ * This is a optional method as defined by XML encryption.
+ * The String to use in WSDD file (in accordance to w3c specifications:
+ * <br/>
+ *
http://www.w3.org/2001/04/xmlenc#aes192-cbc
+ */
+ public static final String AES_192 =
EncryptionConstants.ALGO_ID_BLOCKCIPHER_AES192;
+
+ /**
+ * Sets the {@link
org.apache.ws.security.message.WSSignEnvelope#build(Document, Crypto)
signature}
+ * method to use DSA with SHA1 (DSS) to sign data.
+ * <p/>
+ * This is a required method as defined by XML signature.
+ */
+ public static final String DSA = XMLSignature.ALGO_ID_SIGNATURE_DSA;
+
+ /**
+ * Sets the {@link
org.apache.ws.security.message.WSSignEnvelope#build(Document, Crypto)
signature}
+ * method to use RSA with SHA to sign data.
+ * <p/>
+ * This is a recommended method as defined by XML signature.
+ */
+ public static final String RSA =
XMLSignature.ALGO_ID_SIGNATURE_RSA_SHA1;
+
+ public static final String C14N_OMIT_COMMENTS =
Canonicalizer.ALGO_ID_C14N_OMIT_COMMENTS;
+ public static final String C14N_WITH_COMMENTS =
Canonicalizer.ALGO_ID_C14N_WITH_COMMENTS;
+ public static final String C14N_EXCL_OMIT_COMMENTS =
Canonicalizer.ALGO_ID_C14N_EXCL_OMIT_COMMENTS;
+ public static final String C14N_EXCL_WITH_COMMENTS =
Canonicalizer.ALGO_ID_C14N_EXCL_WITH_COMMENTS;
+
+ /**
+ * Sets the {@link
org.apache.ws.security.message.WSSignEnvelope#build(Document, Crypto)
signing}
+ * method to send the signing certificate as a
+ * <code>BinarySecurityToken</code>.
+ * <p/>
+ * The signing method takes the signing certificate, converts it to a
+ * <code>BinarySecurityToken</code>, puts it in the security header,
+ * and inserts a <code>Reference</code> to the binary security token
+ * into the <code>wsse:SecurityReferenceToken</code>. Thus the whole
+ * signing certificate is transfered to the receiver.
+ * The X509 profile recommends to use {@link #ISSUER_SERIAL} instead
+ * of sending the whole certificate.
+ * <p/>
+ * Please refer to WS Security specification X509 profile, chapter
3.3.2
+ * and to WS Security specification, chapter 7.2
+ * <p/>
+ * Note: only local references to BinarySecurityToken are supported
+ */
+ public static final int BST_DIRECT_REFERENCE = 1;
+
+ /**
+ * Sets the {@link
org.apache.ws.security.message.WSSignEnvelope#build(Document, Crypto)
signing}
+ * or the {@link
org.apache.ws.security.message.WSEncryptBody#build(Document, Crypto)
encryption}
+ * method to send the issuer name and the serial number of a
+ * certificate to the receiver.
+ * <p/>
+ * In contrast to {@link #BST_DIRECT_REFERENCE} only the issuer name
+ * and the serial number of the signing certificate are sent to the
+ * receiver. This reduces the amount of data being sent. The encryption
+ * method uses the public key associated with this certificate to
encrypt
+ * the symmetric key used to encrypt data.
+ * <p/>
+ * Please refer to WS Security specification X509 profile, chapter
3.3.3
+ */
+ public static final int ISSUER_SERIAL = 2;
+
+ /**
+ * Sets the {@link
org.apache.ws.security.message.WSEncryptBody#build(Document, Crypto)
encryption}
+ * method to send the certificate used to encrypt the symmetric key.
+ * <p/>
+ * The encryption method uses the public key associated with this
certificate
+ * to encrypr the symmetric key used to encrypt data. The certificate
is
+ * converted into a <code>KeyIdentfier</code> token and sent to the
receiver.
+ * Thus the complete certificate data is transfered to receiver.
+ * The X509 profile recommends to use {@link #ISSUER_SERIAL} instead
+ * of sending the whole certificate.
+ * <p/>
+ * <p/>
+ * Please refer to WS Security specification X509 profile, chapter 7.3
+ */
+ public static final int X509_KEY_IDENTIFIER = 3;
+ /**
+ * Sets the
+ * {@link
org.apache.ws.security.message.WSSignEnvelope#build(Document, Crypto)
+ * signing}
+ * method to send a <code>SubjectKeyIdentifier</code> to identify
+ * the signing certificate.
+ * <p/>
+ * Refer to WS Security specification X509 profile, chapter 3.3.1
+ * This identification token is not yet fully tested by WSS4J. The
+ * WsDoAllSender does not include the X.509 certificate as
+ * <code>BinarySecurityToken</code> in the request message.
+ */
+ public static final int SKI_KEY_IDENTIFIER = 4;
+
+ /**
+ * Embeds a keyinfo/key name into the EncryptedData element.
+ * <p/>
+ * Refer to WS Security specification X509 profile
+ */
+ public static final int EMBEDDED_KEYNAME = 5;
+ /**
+ * Embeds a keyinfo/wsse:SecurityTokenReference into EncryptedData
element.
+ */
+ public static final int EMBED_SECURITY_TOKEN_REF = 6;
+
+ /**
+ * <code>UT_SIGNING</code> is used internally only to set a specific
Signature
+ * behavior.
+ *
+ * The signing token is constructed from values in the UsernameToken
according
+ * to WS-Trust specification.
+ */
+ public static final int UT_SIGNING = 7;
+
+ /**
+ * <code>THUMPRINT_IDENTIFIER</code> is used to set the specific key
identifier
+ * ThumbprintSHA1.
+ *
+ * This identifier uses the SHA-1 digest of a security token to
+ * identify the security token. Please refer to chapter 7.2 of the
OASIS WSS 1.1
+ * specification.
+ *
+ */
+ public static final int THUMBPRINT_IDENTIFIER = 8;
+
+ /**
+ * <code>CUSTOM_SYMM_SIGNING</code> is used internally only to set a
+ * specific Signature behavior.
+ *
+ * The signing key, reference id and value type are set externally.
+ */
+ public static final int CUSTOM_SYMM_SIGNING = 9;
+
+ /**
+ * <code>ENCRYPTED_KEY_SHA1_IDENTIFIER</code> is used to set the
specific key identifier
+ * ThumbprintSHA1.
+ *
+ * This identifier uses the SHA-1 digest of a security token to
+ * identify the security token. Please refer to chapter 7.3 of the
OASIS WSS 1.1
+ * specification.
+ *
+ */
+ public static final int ENCRYPTED_KEY_SHA1_IDENTIFIER = 10;
+
+ /**
+ * <code>CUSTOM_SYMM_SIGNING_DIRECT</code> is used internally only to
set a
+ * specific Signature behavior.
+ *
+ * The signing key, reference id and value type are set externally.
+ */
+ public static final int CUSTOM_SYMM_SIGNING_DIRECT = 11;
+
+ /**
+ * <code>CUSTOM_KEY_IDENTIFIER</code> is used to set a KeyIdentifier to
+ * a particular ID
+ *
+ * The reference id and value type are set externally.
+ */
+ public static final int CUSTOM_KEY_IDENTIFIER = 12;
+
+ /**
+ * <code>KEY_VALUE</code> is used to set a ds:KeyInfo/ds:KeyValue
element to refer to
+ * either an RSA or DSA public key.
+ */
+ public static final int KEY_VALUE = 13;
+
+ public static final String ENCRYPTED_HEADER = "EncryptedHeader";
+
+ /*
+ * The following values are bits that can be combined to for a set.
+ * Be careful when selecting new values.
+ */
+ public static final int NO_SECURITY = 0;
+ public static final int UT = 0x1; // perform UsernameToken
+ public static final int SIGN = 0x2; // Perform Signature
+ public static final int ENCR = 0x4; // Perform Encryption
+
+ /*
+ * Attention: the signed/Unsigned types identify if WSS4J uses
+ * the SAML token for signature, signature key or not. It does
+ * not mean if the token contains an enveloped signature.
+ */
+ public static final int ST_UNSIGNED = 0x8; // perform SAMLToken
unsigned
+ public static final int ST_SIGNED = 0x10; // perform SAMLToken signed
+
+ public static final int TS = 0x20; // insert Timestamp
+ public static final int UT_SIGN = 0x40; // perform signature with UT
secret key
+ public static final int SC = 0x80; // this is a
SignatureConfirmation
+
+ public static final int NO_SERIALIZE = 0x100;
+ public static final int SERIALIZE = 0x200;
+ public static final int SCT = 0x400; //SecurityContextToken
+ public static final int DKT = 0x800; //DerivedKeyToken
+ public static final int BST = 0x1000; //BinarySecurityToken
+
+ /**
+ * Length of UsernameToken derived key used by .NET WSE to sign a
message.
+ */
+ public static final int WSE_DERIVED_KEY_LEN = 16;
+ public static final String LABEL_FOR_DERIVED_KEY = "WS-Security";
+
+ /**
+ * WS-Trust namespace
+ */
+ public static final String WST_NS
= "
http://schemas.xmlsoap.org/ws/2005/02/trust";
+
+ public final static String WSC_SCT
= "
http://schemas.xmlsoap.org/ws/2005/02/sc/sct";
+
+ //
+ // Fault codes defined in the WSS 1.1 spec under section 12, Error
handling
+ //
+
+ /**
+ * An unsupported token was provided
+ */
+ public static final QName UNSUPPORTED_SECURITY_TOKEN = new
QName(WSSE_NS, "UnsupportedSecurityToken");
+
+ /**
+ * An unsupported signature or encryption algorithm was used
+ */
+ public static final QName UNSUPPORTED_ALGORITHM = new
QName(WSSE_NS, "UnsupportedAlgorithm");
+
+ /**
+ * An error was discovered processing the <Security> header
+ */
+ public static final QName INVALID_SECURITY = new QName
(WSSE_NS, "InvalidSecurity");
+
+ /**
+ * An invalid security token was provided
+ */
+ public static final QName INVALID_SECURITY_TOKEN = new QName
(WSSE_NS, "InvalidSecurityToken");
+
+ /**
+ * The security token could not be authenticated or authorized
+ */
+ public static final QName FAILED_AUTHENTICATION = new QName
(WSSE_NS, "FailedAuthentication");
+
+ /**
+ * The signature or decryption was invalid
+ */
+ public static final QName FAILED_CHECK = new QName
(WSSE_NS, "FailedCheck");
+
+ /**
+ * Referenced security token could not be retrieved
+ */
+ public static final QName SECURITY_TOKEN_UNAVAILABLE = new QName
(WSSE_NS, "SecurityTokenUnavailable");
+
+ /**
+ * The message has expired
+ */
+ public static final QName MESSAGE_EXPIRED = new QName
(WSSE_NS, "MessageExpired");
+
+ /**
+ * Header type in <code>org.apache.ws.security.WSEncryptionPart</code>
+ */
+ public static final int PART_TYPE_HEADER = 1;
+
+ /**
+ * Body type in <code>org.apache.ws.security.WSEncryptionPart</code>
+ */
+ public static final int PART_TYPE_BODY = 2;
+
+ /**
+ * Element type in <code>org.apache.ws.security.WSEncryptionPart</code>
+ */
+ public static final int PART_TYPE_ELEMENT = 3;
+
+}
=======================================
--- /dev/null
+++
/trunk/iam-interceptor/src/main/java/org/openiam/intercept/wssec/WSHandlerConstants.java
Wed Jun 9 22:23:19 2010
@@ -0,0 +1,778 @@
+
+package org.openiam.intercept.wssec;
+
+import org.apache.ws.security.WSConstants;
+import java.util.Hashtable;
+import java.util.Map;
+
+public class WSHandlerConstants {
+ /**
+ * The action parameter. The
+ * handlers use the value of this parameter to determine how
+ * to process the SOAP Envelope. For example in a Axis WSDD file:
+ * <pre>
+ * <handler type="java:org.apache.ws.axis.security.WSDoAllSender">
+ * <parameter name="action" value="UsernameToken"/>
+ * ...
+ * </pre>
+ * orders the handler to attach a <code>UsernameToken</code> to the
SOAP
+ * enevelope. It is a blank separated list of actions to perform.
+ * <p/>
+ * The application may set this parameter using the following method:
+ * <pre>
+ * call.setProperty(WSHandlerConstants.ACTION,
WSHandlerConstants.USERNAME_TOKEN);
+ * </pre>
+ * However, the parameter in the WSDD deployment file overwrites the
+ * property setting (deployment setting overwrites application setting)
+ */
+ public static final String ACTION = "action";
+ public static final String SEND = "send";
+ public static final String RECEIVE = "receive";
+
+ /**
+ * Perform nothing.
+ */
+ public static final String NO_SECURITY = "NoSecurity";
+
+ /**
+ * Perform a UsernameToken identification only.
+ */
+ public static final String USERNAME_TOKEN = "UsernameToken";
+
+ /**
+ * Perform a SAML Token identification.
+ */
+ public static final String SAML_TOKEN_UNSIGNED = "SAMLTokenUnsigned";
+ public static final String SAML_TOKEN_SIGNED = "SAMLTokenSigned";
+
+ public static final String SAML2_TOKEN_UNSIGNED = "SAML2TokenUnsigned";
+ public static final String SAML2_TOKEN_SIGNED = "SAML2TokenSigned";
+
+ /**
+ * Perform Signature.
+ * The signature specific parameters define how to sign, which keys
+ * to use, and so on
+ */
+ public static final String SIGNATURE = "Signature";
+
+ /**
+ * Perform Encryption.
+ * The encryption specific parameters define how to encrypt, which keys
+ * to use, and so on.
+ */
+ public static final String ENCRYPT = "Encrypt";
+
+ /**
+ * Add a timestamp to the security header.
+ */
+ public static final String TIMESTAMP = "Timestamp";
+
+ /**
+ * Suppress the serialization of the SOAP message.
+ * <p/>
+ * Usually the handler serializes the processed SOAP message into a
string
+ * and sets it into the Axis message context as new current message. To
+ * suppress this action, define this action. In this case the handler
+ * stores the processed SOAP message as <code>Document</code> in the
+ * Axis message context with the property name
<code>SND_SECURITY</code>.
+ * <p/>
+ * A chained handler can retrieve the SOAP message and process it. The
+ * last handler in the chain must set the processed SOAP message as
+ * current message in Axis message context.
+ */
+ public static final String NO_SERIALIZATION = "NoSerialization";
+
+ /**
+ * Use this to use a specific signature mechanism for .Net.
+ * This signature mechanism uses data from the username token and
+ * a well defined constant string and constructs a signature
+ * key.
+ */
+ public static final String SIGN_WITH_UT_KEY = "UsernameTokenSignature";
+
+ /**
+ * This is an interal property name to support handler chaining.
+ * The Axis WSS4J handlers use this message context property to
+ * hand over the SOAP partially processed envelope document to
+ * the next WSS4J handler in the chain.
+ */
+ public static final String SND_SECURITY = "SND_SECURITY";
+
+ /**
+ * The actor name of the <code>wsse:Security</code> header.
+ * <p/>
+ * If this parameter is omitted, the actor name is not set. Please
+ * refer to {@link org.apache.axis.Constants#ATTR_ACTOR} and {@link
org.apache.axis.Constants#ATTR_ROLE}
+ * about the parameter names. They are set to <code>"actor"</code>
+ * and <code>"role"</code> respectively.
+ * <p/>
+ * The value of the actor or role has to match the receiver's setting
+ * or may contain standard values.
+ * <p/>
+ * The application may set this parameter using the following method:
+ * <pre>
+ * call.setProperty(WSHandlerConstants.ACTOR, "ActorName");
+ * </pre>
+ * However, the parameter in the WSDD deployment file overwrites the
+ * property setting (deployment setting overwrites application
setting).
+ *
+ * @see org.apache.axis.Constants#URI_SOAP11_NEXT_ACTOR
+ * @see org.apache.axis.Constants#URI_SOAP12_NEXT_ROLE
+ */
+ public static final String ACTOR = "actor";
+
+ /**
+ * The role name of the <code>wsse:Security</code> header.
+ * This is used for SOAP 1.2. Refer also to {@link #ACTOR}.
+ */
+ public static final String ROLE = "role";
+
+ /**
+ * Sets the <code>mustUnderstand</code> flag.
+ * <p/>
+ * If the parameter has the value <code>1</code>
+ * or <code>true</code> the <code>mustUnderstand</code> is set.
+ * The values <code>0</code> or <code>false</code> supress the
+ * flag.
+ * <p/>
+ * The application may set this parameter using the following method:
+ * <pre>
+ * call.setProperty(WSHandlerConstants.MUST_UNDERSTAND, "false");
+ * </pre>
+ * However, the parameter in the WSDD deployment file overwrites the
+ * property setting (deployment setting overwrites application
setting).
+ * <p/>
+ * The default setting is <code>true</code>
+ * <p/>
+ * Please refer to {@link
org.apache.axis.Constants#ATTR_MUST_UNDERSTAND}
+ * about the parameter name (<code>"mustUnderstand"</code>).
+ */
+ public static final String MUST_UNDERSTAND = "mustUnderstand";
+
+ /**
+ * The user's name. It is used differently by the WS Security
functions.
+ * <ul>
+ * <li>The <i>UsernameToken</i> function sets this name in the
+ * <code>UsernameToken</code>.
+ * </li>
+ * <li>The <i>Signing</i> function uses this name as the alias name
+ * in the keystore to get user's certificate and private key to
+ * perform signing if {@link #SIGNATURE_USER} is not used.
+ * </li>
+ * <li>The <i>encryption</i>
+ * functions uses this parameter as fallback if {@link
#ENCRYPTION_USER}
+ * is not used.
+ * </li>
+ * </ul>
+ * It is also possible to set the user's name and the according
password
+ * via the call function, for example:
+ * <pre>
+ * ...
+ * call.setUsername("name");
+ * call.setPassword("WSS4Java");
+ * ...
+ * </pre>
+ * The user parameter in the deployment descritor (WSDD) file
overwrites
+ * the application's setting.
+ * </p>
+ * For an additional way to set the password refer to
+ * {@link #PW_CALLBACK_CLASS} and {@link #PW_CALLBACK_REF}.
+ * <p/>
+ * If the security functions uses the username from the message
context, it
+ * clears the username from the message context
+ * after they copied it. This prevents sending of the username in the
+ * HTTP header.
+ * <p/>
+ * In this case the HTTP authentication mechansisms do <b>not</b> work
+ * anymore. User authentication shall be done via the username token or
+ * the certificate verification of the signature certificate.
+ */
+ public static final String USER = "user";
+
+ /**
+ * The Axis WSS4J handlers provide several ways to get the password
required
+ * to construct a username token or to sign a message.
+ * In addition the callback class may check if a username/password
+ * combination is valid. Refer to the documentation of
+ * {@link org.apache.ws.security.WSPasswordCallback} for more
information
+ * about this feature.
+ * <ul>
+ * <li> A class that implements a callback interface (see below). The
+ * handler loads this class and calls the callback method. This
+ * class must have a public default constructor with not parameters.
+ * </li>
+ * <li> The application (or a preceeding handler) sets a reference to
an
+ * object that implements the callback interface
+ * </li>
+ * <li> The application sets the password directly using the
+ * <code>setPassword</code> function of the <code>Call</code>.
+ * </ul>
+ * The callback class or callback object shall implement specific
password
+ * getter methods, for example reading a database or directory.
+ * <p/>
+ * The handler first checks if it can get a the password via a callback
+ * class. If that fails it checks if it can get the password from the
+ * object reference, if that also fails the handler tries the password
+ * property.
+ * <p/>
+ * The following parameter defines a class that implements a callback
+ * handler interface. The handler loads the class and calls the
callback
+ * handler method to get the password. The callback
+ * class needs to implement the
+ * {@link javax.security.auth.callback.CallbackHandler} interface.
+ * <p/>
+ * The callback function
+ * {@link
javax.security.auth.callback.CallbackHandler#handle(javax.security.auth.callback.Callback[])}
+ * gets an array of {@link org.apache.ws.security.WSPasswordCallback}
+ * objects. Only the first entry of the array is used. This object
+ * contains the username/keyname as identifier. The callback handler
must
+ * set the password or key associated with this identifier before it
returns.
+ * <p/>
+ * The application may set this parameter using the following method:
+ * <pre>
+ *
call.setProperty(WSHandlerConstants.PW_CALLBACK_CLASS, "PWCallbackClass");
+ * </pre>
+ * However, the parameter in the WSDD deployment file overwrites the
+ * property setting (deployment setting overwrites application
setting).
+ * <p/>
+ * Refer also to comment in {@link #USER} about HTTP authentication
+ * functions.
+ */
+ public static final String PW_CALLBACK_CLASS = "passwordCallbackClass";
+
+ /**
+ * An application may set an object reference to an object that
implements
+ * the {@link javax.security.auth.callback.CallbackHandler} interface.
+ * Only the application can set this property using:
+ * <pre>
+ * call.setProperty(WSHandlerConstants.PW_CALLBACK_REF,
anPWCallbackObject);
+ * </pre>
+ * Refer to {@link #PW_CALLBACK_CLASS} for further information about
+ * password callback handling and the priority of the different
+ * methods.
+ * <p/>
+ * Note: every handler that preceeds this handler in the chain can set
+ * this property too. This may be useful on the server side.
+ */
+ public static final String PW_CALLBACK_REF = "passwordCallbackRef";
+
+ /**
+ * The user's name for encryption.
+ * <p/>
+ * The encryption functions uses the public key of this user's
certificate
+ * to encrypt the generated symmetric key.
+ * <p/>
+ * If this parameter is not set, then the encryption
+ * function falls back to the {@link #USER} parameter to get the
+ * certificate.
+ * <p/>
+ * If <b>only</b> encryption of the SOAP body data is requested,
+ * it is recommended to use this parameter to define the username.
+ * The application can then use the standard user and password
+ * functions (see example at {@link #USER} to enable HTTP
authentication
+ * functions.
+ * <p/>
+ * Encryption only does not authenticate a user / sender, therefore it
+ * does not need a password.
+ * <p/>
+ * Placing the username of the encryption certificate in the WSDD is
not
+ * a security risk, because the public key of that certificate is used
+ * only.
+ * <p/>
+ * The application may set this parameter using the following method:
+ * <pre>
+ *
call.setProperty(WSHandlerConstants.ENCYRPTION_USER, "encryptionUser");
+ * </pre>
+ * However, the parameter in the WSDD deployment file overwrites the
+ * property setting (deployment setting overwrites application
setting).
+ */
+ public static final String ENCRYPTION_USER = "encryptionUser";
+
+ /**
+ * The user's name for signature.
+ * <p/>
+ * This name is used as the alias name in the keystore to get user's
+ * certificate and private key to perform signing.
+ * <p/>
+ * If this parameter is not set, then the signature
+ * function falls back to the {@link #USER} parameter.
+ * <p/>
+ * The application may set this parameter using the following method:
+ * <pre>
+ *
call.setProperty(WSHandlerConstants.SIGNATURE_USER, "signatureUser");
+ * </pre>
+ * However, the parameter in the WSDD deployment file overwrites the
+ * property setting (deployment setting overwrites application
setting).
+ */
+ public static final String SIGNATURE_USER = "signatureUser";
+
+ /**
+ * Specifying this name as {@link #ENCRYPTION_USER}
+ * triggers a special action to get the public key to use for
encryption.
+ * <p/>
+ * The handler uses the public key of the sender's certificate. Using
this
+ * way to define an encryption key simplifies certificate management to
+ * a large extend.
+ */
+ public static final String USE_REQ_SIG_CERT = "useReqSigCert";
+
+ /**
+ * This parameter works in the same way as {@link #PW_CALLBACK_CLASS}
but
+ * the Axis WSS4J handler uses it to get the key associated with a key
name.
+ */
+ public static final String ENC_CALLBACK_CLASS
= "EmbeddedKeyCallbackClass";
+
+ /**
+ * This parameter works in the same way as {@link #PW_CALLBACK_REF} but
+ * the Axis WSS4J handler uses it to get the key associated with a key
name.
+ */
+ public static final String ENC_CALLBACK_REF = "EmbeddedKeyCallbackRef";
+
+ /**
+ * Text of the key name that needs to be sent
+ */
+ public static final String ENC_KEY_NAME = "EmbeddedKeyName";
+
+ /**
+ * The name of the crypto property file to use for SOAP Signature.
+ * <p/>
+ * The classloader loads this file. Therefore it must be accessible
+ * via the classpath.
+ * <p/>
+ * To locate the implementation of the
+ * {@link org.apache.ws.security.components.crypto.Crypto Crypto}
+ * interface implementation the property file must contain the property
+ * <code>org.apache.ws.security.crypto.provider</code>. The value of
+ * this property is the classname of the implementation class.
+ * <p/>
+ * The following line defines the standard implementation:
+ * <pre>
+ *
org.apache.ws.security.crypto.provider=org.apache.ws.security.components.crypto.Merlin
+ * </pre>
+ * The other contents of the property file depend on the implementation
+ * of the {@link org.apache.ws.security.components.crypto.Crypto
Crypto}
+ * interface implementation.
+ * <p/>
+ * The property file of the standard implementation
+ * {@link org.apache.ws.security.components.crypto.Merlin} uses
+ * the following properties:
+ * <pre>
+ * org.apache.ws.security.crypto.provider
+ * org.apache.ws.security.crypto.merlin.file
+ * org.apache.ws.security.crypto.merlin.keystore.type
+ * org.apache.ws.security.crypto.merlin.keystore.provider
+ * org.apache.ws.security.crypto.merlin.keystore.password
+ * org.apache.ws.security.crypto.merlin.keystore.alias
+ * org.apache.ws.security.crypto.merlin.cert.provider
+ * </pre>
+ * The entries are:
+ * <ul>
+ * <li> <code>org.apache.ws.security.crypto.provider</code> see
+ * description above
+ * </li>
+ * <li><code>org.apache.ws.security.crypto.merlin.file</code>
+ * The path to the keystore file. At first the classloader tries to
load
+ * this file, if this fails the implementations performs a file system
+ * lookup.
+ * </li>
+ * <li><code>org.apache.ws.security.crypto.merlin.keystore.type</code>
+ * The keystore type, for example <code>JKS</code> for the Java key
store.
+ * Other keystore type, such as <code>pkcs12</code> are also possible
but depend
+ * on the actual <code>Crypto</code> implementation.
+ * </li>
+ *
<li><code>org.apache.ws.security.crypto.merlin.keystore.password</code>
+ * The password to read the keystore. If this property is not set, then
+ * the <code>pwcallback</code>property must be defined.
+ * </li>
+ * </ul>
+ * The application may set this parameter using the following method:
+ * <pre>
+ *
call.setProperty(WSHandlerConstants.SIG_PROP_FILE, "myCrypto.properties");
+ * </pre>
+ * However, the parameter in the WSDD deployment file overwrites the
+ * property setting (deployment setting overwrites application
setting).
+ * <p/>
+ * If a property file is not set and a signature is requested,
+ * the handler throws an <code>AxisFault</code>.
+ */
+ public static final String SIG_PROP_FILE = "signaturePropFile";
+
+ /**
+ * The key that hold the refernce of the
<code>java.util.Properties</code>
+ * object holding complete info about signature Crypto implementation.
+ * This should contain all information that would contain in an
equivalent
+ * .properties file which includes the Crypto implementation class
name.
+ *
+ * Refer to documentation of {@link #SIG_PROP_FILE}.
+ */
+ public final static String SIG_PROP_REF_ID = "SignaturePropRefId";
+
+ /**
+ * The WSDoAllReceiver handler stores a result <code>Vector</code>
+ * in this property.
+ * <p/>
+ * The vector contains <code>WSDoAllReceiverResult</code> objects
+ * for each chained WSDoAllReceiver handler.
+ */
+ public static final String RECV_RESULTS = "RECV_RESULTS";
+
+ /**
+ * The name of the crypto propterty file to use for SOAP Decryption.
+ * <p/>
+ * Refer to documentation of {@link #SIG_PROP_FILE}.
+ * <p/>
+ * Refer to {@link #SIG_PROP_FILE} for a detail description
+ * about the format and how to use this property file.
+ * <p/>
+ * The application may set this parameter using the following method:
+ * <pre>
+ *
call.setProperty(WSHandlerConstants.DEC_PROP_FILE, "myCrypto.properties");
+ * </pre>
+ * However, the parameter in the WSDD deployment file overwrites the
+ * property setting (deployment setting overwrites application
setting).
+ * <p/>
+ * If this parameter is not used, but the signature crypto property
+ * file is defined (combined Encryption/Signature action), then the
+ * encryption function uses that file. Otherwise the handler throws
+ * an <code>AxisFault</code>.
+ */
+ public static final String DEC_PROP_FILE = "decryptionPropFile";
+
+ /**
+ * The key that hold the refernce of the
<code>java.util.Properties</code>
+ * object holding complete info about decryption Crypto
implementation. This
+ * should contain all information that would contain in an equivalent
+ * .properties file which includes the Crypto implementation class
name.
+ *
+ * Refer to documentation of {@link #DEC_PROP_FILE}.
+ */
+ public final static String DEC_PROP_REF_ID = "decryptionPropRefId";
+
+ /**
+ * Specific parameter for UsernameToken action to define the encoding
+ * of the password.
+ * <p/>
+ * The parameter can be set to either {@link WSConstants#PW_DIGEST}
+ * or to {@link WSConstants#PW_TEXT}.
+ * <p/>
+ * The application may set this parameter using the following method:
+ * <pre>
+ * call.setProperty(WSHandlerConstants.PASSWORD_TYPE,
WSConstants.PW_DIGEST);
+ * </pre>
+ * However, the parameter in the WSDD deployment file overwrites the
+ * property setting (deployment setting overwrites application
setting).
+ * <p/>
+ * The default setting is PW_DIGEST.
+ */
+ public static final String PASSWORD_TYPE = "passwordType";
+
+ /**
+ * This variable controls whether types other than PasswordDigest or
PasswordText
+ * are allowed when processing UsernameTokens.
+ *
+ * By default this is set to false so that the user doesn't have to
explicitly
+ * reject custom token types in the callback handler.
+ */
+ public static final String HANDLE_CUSTOM_PASSWORD_TYPES
= "handleCustomPasswordTypes";
+
+ /**
+ * This variable controls whether (wsse) namespace qualified password
types are
+ * accepted when processing UsernameTokens.
+ *
+ * By default this is set to false.
+ */
+ public static final String ALLOW_NAMESPACE_QUALIFIED_PASSWORD_TYPES
+ = "allowNamespaceQualifiedPasswordTypes";
+
+ /**
+ * Parameter to generate additional elements in
<code>UsernameToken</code>.
+ * <p/>
+ * The value of this parameter is a list of element names that are
added
+ * to the UsernameToken. The names of the list a separated by spaces.
+ * <p/>
+ * The list may containe the names <code>nonce</code> and
+ * <code>created</code> only. Use this option if the password type is
+ * <code>passwordText</code> and the handler shall add the
<code>Nonce</code>
+ * and/or <code>Created</code> elements.
+ */
+ public static final String ADD_UT_ELEMENTS = "addUTElements";
+
+ /**
+ * Defines which key identifier type to use. The WS-Security
specifications
+ * recommends to use the identifier type <code>IssuerSerial</code>. For
+ * possible signature key identifier types refer to
+ * {@link #keyIdentifier}. For signature <code>IssuerSerial</code>
+ * and <code>DirectReference</code> are valid only.
+ * <p/>
+ * The application may set this parameter using the following method:
+ * <pre>
+ * call.setProperty(WSHandlerConstants.SIG_KEY_ID, "DirectReference");
+ * </pre>
+ * However, the parameter in the WSDD deployment file overwrites the
+ * property setting (deployment setting overwrites application
setting).
+ */
+ public static final String SIG_KEY_ID = "signatureKeyIdentifier";
+
+ /**
+ * Defines which signature algorithm to use.
+ * <p/>
+ * The application may set this parameter using the following method:
+ * <pre>
+ * call.setProperty(
+ * WSHandlerConstants.SIG_ALGO,
+ * "
http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"
+ * );
+ * </pre>
+ * However, the parameter in the WSDD deployment file overwrites the
+ * property setting (deployment setting overwrites application
setting).
+ */
+ public static final String SIG_ALGO = "signatureAlgorithm";
+
+ /**
+ * Defines which signature digest algorithm to use.
+ * <p/>
+ * The application may set this parameter using the following method:
+ * <pre>
+ * call.setProperty(
+ *
WSHandlerConstants.SIG_DIGEST_ALGO, "
http://www.w3.org/2001/04/xmlenc#sha256"
+ * );
+ * </pre>
+ * However, the parameter in the WSDD deployment file overwrites the
+ * property setting (deployment setting overwrites application
setting).
+ */
+ public static final String SIG_DIGEST_ALGO
= "signatureDigestAlgorithm";
+
+ /**
+ * Parameter to define which parts of the request shall be signed.
+ * <p/>
+ * Refer to {@link #ENCRYPTION_PARTS} for a detailed description of
+ * the format of the value string.
+ * <p/>
+ * If this parameter is not specified the handler signs the SOAP Body
+ * by default.
+ * <p/>
+ * The WS Security specifications define several formats to transfer
the
+ * signature tokens (certificates) or references to these tokens.
+ * Thus, the plain element name <code>Token</code>
+ * signs the token and takes care of the different format.
+ * <p/>
+ * To sign the SOAP body <b>and</b> the signature token the value of
this
+ * parameter must contain:
+ * <pre>
+ * <parameter name="signatureParts"
+ * value="{}{
http://schemas.xmlsoap.org/soap/envelope/}Body; Token"
/>
+ * </pre>
+ * To specify an element without a namespace use the string
+ * <code>Null</code> as the namespace name (this is a case sensitive
+ * string)
+ * <p/>
+ * If there is no other element in the request with a local name of
+ * <code>Body</code> then the SOAP namespace identifier can be empty
+ * (<code>{}</code>).
+ */
+ public static final String SIGNATURE_PARTS = "signatureParts";
+
+ /**
+ * The name of the crypto propterty file to use for SOAP Encryption.
+ * <p/>
+ * Refer to documentation of {@link #SIG_PROP_FILE}.
+ * <p/>
+ * The application may set this parameter using the following method:
+ * <pre>
+ *
call.setProperty(WSHandlerConstants.ENC_PROP_FILE, "myCrypto.properties");
+ * </pre>
+ * However, the parameter in the WSDD deployment file overwrites the
+ * property setting (deployment setting overwrites application
setting).
+ * <p/>
+ * If this parameter is not used, but the signature crypto property
+ * file is defined (combined Encryption/Signature action), then the
+ * encryption function uses signature property file. Otherwise the
+ * handler throws an <code>AxisFault</code>.
+ */
+ public static final String ENC_PROP_FILE = "encryptionPropFile";
+
+ /**
+ * The key that hold the refernce of the
+ * <code>java.util.Properties</code> object holding complete info about
+ * encryption Crypto implementation. This should contain all
information
+ * that would contain in an equivalent .properties file which includes
the
+ * Crypto implementation class name.
+ *
+ * Refer to documentation of {@link #DEC_PROP_FILE}.
+ */
+ public final static String ENC_PROP_REF_ID = "encryptionPropRefId";
+
+
+ /**
+ * Defines which key identifier type to use. The WS-Security
specifications
+ * recommends to use the identifier type <code>IssuerSerial</code>. For
+ * possible encryption key identifier types refer to
+ * {@link #keyIdentifier}. For encryption <code>IssuerSerial</code>,
+ * <code>X509KeyIdentifier</code>, <code>DirectReference</code>,
+ * <code>Thumbprint</code>, <code>SKIKeyIdentifier</code>, and
+ * <code>EmbeddedKeyName</code> are valid only.
+ * <p/>
+ * The application may set this parameter using the following method:
+ * <pre>
+ *
call.setProperty(WSHandlerConstants.ENC_KEY_ID, "X509KeyIdentifier");
+ * </pre>
+ * However, the parameter in the WSDD deployment file overwrites the
+ * property setting (deployment setting overwrites application
setting).
+ */
+ public static final String ENC_KEY_ID = "encryptionKeyIdentifier";
+
+ /**
+ * Defines which symmetric encryption algorithm to use. WSS4J supports
the
+ * following alorithms: {@link WSConstants#TRIPLE_DES},
+ * {@link WSConstants#AES_128}, {@link WSConstants#AES_256},
+ * and {@link WSConstants#AES_192}. Except for AES 192 all of these
+ * algorithms are required by the XML Encryption specification.
+ * <p/>
+ * The application may set this parameter using the following method:
+ * <pre>
+ * call.setProperty(WSHandlerConstants.ENC_SYM_ALGO,
WSConstants.AES_256);
+ * </pre>
+ * However, the parameter in the WSDD deployment file overwrites the
+ * property setting (deployment setting overwrites application
setting).
+ */
+ public static final String ENC_SYM_ALGO = "encryptionSymAlgorithm";
+
+ /**
+ * Defines which algorithm to use to encrypt the generated symmetric
key.
+ * Currently WSS4J supports {@link WSConstants#KEYTRANSPORT_RSA15}
only.
+ * <p/>
+ * The application may set this parameter using the following method:
+ * <pre>
+ * call.setProperty(WSHandlerConstants.ENC_KEY_TRANSPORT, "RSA15");
+ * </pre>
+ * However, the parameter in the WSDD deployment file overwrites the
+ * property setting (deployment setting overwrites application
setting).
+ */
+ public static final String ENC_KEY_TRANSPORT =
+ "encryptionKeyTransportAlgorithm";
+
+ /**
+ * Parameter to define which parts of the request shall be encrypted.
+ * <p/>
+ * The value of this parameter is a list of semi-colon separated
+ * element names that identify the elements to encrypt. An encryption
mode
+ * specifier and a namespace identification, each inside a pair of
curly
+ * brackets, may preceed each element name.
+ * <p/>
+ * The encryption mode specifier is either <code>{Content}</code> or
+ * <code>{Element}</code>. Please refer to the W3C XML Encryption
+ * specification about the differences between Element and Content
+ * encryption. The encryption mode defaults to <code>Content</code>
+ * if it is omitted. Example of a list:
+ * <pre>
+ * <parameter name="encryptionParts"
+ * value="{Content}{
http://example.org/paymentv2}CreditCard;
+ * {Element}{}UserName" />
+ * </pre>
+ * The the first entry of the list identifies the element
+ * <code>CreditCard</code> in the namespace
+ * <code>
http://example.org/paymentv2</code>, and will encrypt its
content.
+ * Be aware that the element name, the namespace identifier, and the
+ * encryption modifier are case sensitive.
+ * <p/>
+ * The encryption modifier and the namespace identifier can be ommited.
+ * In this case the encryption mode defaults to <code>Content</code>
and
+ * the namespace is set to the SOAP namespace.
+ * <p/>
+ * An empty encryption mode defaults to <code>Content</code>, an empty
+ * namespace identifier defaults to the SOAP namespace.
+ * The second line of the example defines <code>Element</code> as
+ * encryption mode for an <code>UserName</code> element in the SOAP
+ * namespace.
+ * <p/>
+ * To specify an element without a namespace use the string
+ * <code>Null</code> as the namespace name (this is a case sensitive
+ * string)
+ * <p/>
+ * If no list is specified, the handler encrypts the SOAP Body in
+ * <code>Content</code> mode by default.
+ */
+ public static final String ENCRYPTION_PARTS = "encryptionParts";
+
+ /**
+ * The name of the SAML Issuer factory property file.
+ * The classloader loads this file. Therefore it must be accessible
+ * via the classpath.
+ */
+ public static final String SAML_PROP_FILE = "samlPropFile";
+
+ /**
+ * Time-To-Live is the time difference between creation and expiry
time in
+ * the WSS Timestamp.
+ * The time-to-live in seconds. After this time the SOAP request is
+ * invalid (at least the security data shall be treated this way).
+ * <p/>
+ * If this parameter is not defined, contains a value less or equal
+ * zero, or an illegal format the handlers use a default TTL of
+ * 300 seconds (5 minutes).
+ */
+ public static final String TTL_TIMESTAMP = "timeToLive";
+
+ /**
+ * Whether to enable signatureConfirmation or not
+ * By default signatureConfirmation is enabled
+ */
+ public static final String ENABLE_SIGNATURE_CONFIRMATION
= "enableSignatureConfirmation";
+
+ /**
+ * Should timestamps have precision in milliseconds
+ */
+ public static final String TIMESTAMP_PRECISION
= "precisionInMilliseconds";
+
+ /**
+ * Set the value of this parameter to true to enable strict timestamp
+ * handling.
+ *
+ * Strict Timestamp handling: throw an exception if a Timestamp
contains
+ * an <code>Expires</code> element and the semantics of the request are
+ * expired, i.e. the current time at the receiver is past the expires
time.
+ */
+ public static final String TIMESTAMP_STRICT = "timestampStrict";
+
+ /**
+ * Define the parameter values to set the key identifier types. These
are:
+ * <ul>
+ * <li><code>DirectReference</code> for {@link
WSConstants#BST_DIRECT_REFERENCE}
+ * </li>
+ * <li><code>IssuerSerial</code> for {@link WSConstants#ISSUER_SERIAL}
+ * </li>
+ * <li><code>X509KeyIdentifier</code> for {@link
WSConstants#X509_KEY_IDENTIFIER}
+ * </li>
+ * <li><code>SKIKeyIdentifier</code> for {@link
WSConstants#SKI_KEY_IDENTIFIER}
+ * </li>
+ * <li><code>EmbeddedKeyName</code> for {@link
WSConstants#EMBEDDED_KEYNAME}
+ * </li>
+ * <li><code>Thumbprint</code> for {@link WSConstants#THUMBPRINT}
+ * </li>
+ * </ul
+ * See {@link #SIG_KEY_ID} {@link #ENC_KEY_ID}.
+ */
+ public static Map keyIdentifier = new Hashtable();
+
+ static {
+ keyIdentifier.put("DirectReference",
+ new Integer(WSConstants.BST_DIRECT_REFERENCE));
+ keyIdentifier.put("IssuerSerial",
+ new Integer(WSConstants.ISSUER_SERIAL));
+ keyIdentifier.put("X509KeyIdentifier",
+ new Integer(WSConstants.X509_KEY_IDENTIFIER));
+ keyIdentifier.put("SKIKeyIdentifier",
+ new Integer(WSConstants.SKI_KEY_IDENTIFIER));
+ keyIdentifier.put("EmbeddedKeyName",
+ new Integer(WSConstants.EMBEDDED_KEYNAME));
+ keyIdentifier.put("Thumbprint",
+ new Integer(WSConstants.THUMBPRINT_IDENTIFIER));
+ }
+ /*
+ * internally used property names to store values inside the message
context
+ * that must have the same livetime as a message (request/response
model).
+ */
+ public static final String SEND_SIGV = "_sendSignatureValues_";
+ public static final String SIG_CONF_DONE = "_sigConfDone_";
+}
+
=======================================
--- /dev/null
+++
/trunk/iam-interceptor/src/main/java/org/openiam/intercept/wssec/WSS4JInInterceptor.java
Wed Jun 9 22:23:19 2010
@@ -0,0 +1,572 @@
+
+package org.openiam.intercept.wssec;
+
+import java.io.IOException;
+import java.security.Principal;
+import java.security.cert.X509Certificate;
+import java.util.List;
+import java.util.Map;
+import java.util.ResourceBundle;
+import java.util.Vector;
+
+
+import javax.security.auth.callback.Callback;
+import javax.security.auth.callback.CallbackHandler;
+import javax.security.auth.callback.UnsupportedCallbackException;
+import javax.xml.namespace.QName;
+import javax.xml.soap.SOAPBody;
+import javax.xml.soap.SOAPException;
+import javax.xml.soap.SOAPMessage;
+import javax.xml.soap.SOAPPart;
+import javax.xml.stream.XMLStreamConstants;
+import javax.xml.stream.XMLStreamException;
+import javax.xml.stream.XMLStreamReader;
+import javax.xml.transform.dom.DOMSource;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.cxf.binding.soap.SoapFault;
+import org.apache.cxf.binding.soap.SoapMessage;
+import org.apache.cxf.binding.soap.SoapVersion;
+import org.apache.cxf.binding.soap.saaj.SAAJInInterceptor;
+import org.apache.cxf.common.classloader.ClassLoaderUtils;
+import org.apache.cxf.endpoint.Endpoint;
+import org.apache.cxf.helpers.CastUtils;
+import org.apache.cxf.interceptor.Fault;
+import org.apache.cxf.phase.Phase;
+import org.apache.cxf.security.SecurityContext;
+import org.apache.cxf.staxutils.StaxUtils;
+import org.apache.cxf.ws.security.SecurityConstants;
+import org.apache.cxf.ws.security.tokenstore.SecurityToken;
+import org.apache.cxf.ws.security.tokenstore.TokenStore;
+import org.apache.cxf.ws.security.wss4j.AbstractWSS4JInterceptor;
+import org.apache.ws.security.WSConstants;
+import org.apache.ws.security.WSPasswordCallback;
+//import org.apache.ws.security.WSSConfig;
+//import org.apache.ws.security.WSSecurityEngine;
+import org.apache.ws.security.WSSecurityEngineResult;
+import org.apache.ws.security.WSSecurityException;
+import org.apache.ws.security.WSUsernameTokenPrincipal;
+import org.apache.ws.security.handler.RequestData;
+import org.apache.ws.security.handler.WSHandlerConstants;
+import org.apache.ws.security.handler.WSHandlerResult;
+import org.apache.ws.security.message.WSSecHeader;
+import org.apache.ws.security.message.token.SecurityTokenReference;
+import org.apache.ws.security.message.token.Timestamp;
+import org.apache.ws.security.processor.Processor;
+import org.apache.ws.security.util.WSSecurityUtil;
+
+
+/**
+ * Performs WS-Security inbound actions.
+ *
+ */
+public class WSS4JInInterceptor extends AbstractWSS4JInterceptor {
+
+ static protected ResourceBundle res =
ResourceBundle.getBundle("securityconf");
+
+
+ public static final String TIMESTAMP_RESULT = "wss4j.timestamp.result";
+ public static final String SIGNATURE_RESULT = "wss4j.signature.result";
+ public static final String PRINCIPAL_RESULT = "wss4j.principal.result";
+ public static final String PROCESSOR_MAP = "wss4j.processor.map";
+
+ public static final String SECURITY_PROCESSED =
WSS4JInInterceptor.class.getName() + ".DONE";
+
+ private static final Log LOG =
LogFactory.getLog(WSS4JInInterceptor.class);
+
+
+ private SAAJInInterceptor saajIn = new SAAJInInterceptor();
+ private boolean ignoreActions;
+
+ /**
+ *
+ */
+ private WSSecurityEngine secEngineOverride;
+
+ public WSS4JInInterceptor() {
+ super();
+
+ setPhase(Phase.PRE_PROTOCOL);
+ getAfter().add(SAAJInInterceptor.class.getName());
+ }
+ public WSS4JInInterceptor(boolean ignore) {
+ this();
+ ignoreActions = ignore;
+ }
+
+ public WSS4JInInterceptor(Map<String, Object> properties) {
+ this();
+
+ LOG.info("OpenIAM WSS4JInterceptor Map constructor called.");
+
+ setProperties(properties);
+ final Map<QName, Object> map = CastUtils.cast(
+ (Map)properties.get(PROCESSOR_MAP));
+ if (map != null) {
+ secEngineOverride = createSecurityEngine(map);
+ }
+ }
+
+ public void setIgnoreActions(boolean i) {
+ ignoreActions = i;
+ }
+ private SOAPMessage getSOAPMessage(SoapMessage msg) {
+ SOAPMessage doc = msg.getContent(SOAPMessage.class);
+ if (doc == null) {
+ saajIn.handleMessage(msg);
+ doc = msg.getContent(SOAPMessage.class);
+ }
+ return doc;
+ }
+
+ @Override
+ public Object getProperty(Object msgContext, String key) {
+ // use the superclass first
+ Object result = super.getProperty(msgContext, key);
+
+ // handle the special case of the SEND_SIGV
+ if (result == null
+ && key == WSHandlerConstants.SEND_SIGV
+ && this.isRequestor((SoapMessage)msgContext)) {
+ result =
((SoapMessage)msgContext).getExchange().getOutMessage().get(key);
+ }
+ return result;
+ }
+
+ public void handleMessage(SoapMessage msg) throws Fault {
+ LOG.info("INTERCEPTOR handleMessage() called");
+
+ String enabled = res.getString("WS_SECURITY_ENABLED");
+ if (enabled.equalsIgnoreCase("false")) {
+ return;
+ }
+
+ if (msg.containsKey(SECURITY_PROCESSED)) {
+ return;
+ }
+ msg.put(SECURITY_PROCESSED, Boolean.TRUE);
+ WSSConfig config =
(WSSConfig)msg.getContextualProperty(WSSConfig.class.getName());
+ WSSecurityEngine engine = null;
+ if (config != null) {
+ engine = new WSSecurityEngine();
+ engine.setWssConfig(config);
+ } else {
+ engine = getSecurityEngine();
+ }
+
+ SOAPMessage doc = getSOAPMessage(msg);
+
+
+
+ SoapVersion version = msg.getVersion();
+
+ RequestData reqData = new RequestData();
+ /*
+ * The overall try, just to have a finally at the end to perform
some
+ * housekeeping.
+ */
+ try {
+ reqData.setMsgContext(msg);
+ computeAction(msg, reqData);
+ Vector actions = new Vector();
+ String action = getAction(msg, version);
+
+ int doAction = SecurityUtil.decodeAction(action, actions);
+
+ LOG.info("Action = " + doAction);
+
+
+ String actor = (String)getOption(WSHandlerConstants.ACTOR);
+ LOG.info("Actor =" + actor);
+
+
+ CallbackHandler cbHandler = getCallback(reqData, doAction);
+ LOG.info("Callback handler=" + cbHandler);
+
+ /*
+ * Get and check the Signature specific parameters first
because
+ * they may be used for encryption too.
+ */
+ //doReceiverAction(doAction, reqData);
+
+ Vector wsResult = null;
+
+
+ wsResult = engine.processSecurityHeader(
+ doc.getSOAPPart(),
+ actor,
+ cbHandler,
+ reqData.getSigCrypto(),
+ reqData.getDecCrypto()
+ );
+
+ if (wsResult == null) {
+ throw new
WSSecurityException(WSSecurityException.INVALID_SECURITY);
+ }
+ // validate the saml assertion
+ if (! SecurityUtil.isSamlAssertionValid(doc.getSOAPPart()) ) {
+ LOG.info("IsSamlAssertion failed");
+ throw new
WSSecurityException(WSSecurityException.INVALID_SECURITY_TOKEN);
+ }
+
+
+ // if (reqData.getWssConfig().isEnableSignatureConfirmation()) {
+ // checkSignatureConfirmation(reqData, wsResult);
+ // }
+
+ //checkSignatures(msg, reqData, wsResult);
+ //checkTimestamps(msg, reqData, wsResult);
+ //checkActions(msg, reqData, wsResult, actions);
+
+ doResults(msg, actor, doc, wsResult);
+
+
+
+ } catch (WSSecurityException e) {
+ SoapFault fault = createSoapFault(version, e);
+ throw fault;
+ } catch (XMLStreamException e) {
+ throw new SoapFault("STAX_EX", e, version.getSender());
+ } catch (SOAPException e) {
+ throw new SoapFault("SAAJ_EX", e, version.getSender());
+ } finally {
+ reqData.clear();
+ reqData = null;
+ }
+ }
+
+ private void checkActions(SoapMessage msg, RequestData reqData, Vector
wsResult, Vector actions)
+ throws WSSecurityException {
+ /*
+ * now check the security actions: do they match, in any order?
+ */
+ if (!ignoreActions && !checkReceiverResultsAnyOrder(wsResult,
actions)) {
+ LOG.info("Security processing failed (actions mismatch)");
+ throw new
WSSecurityException(WSSecurityException.INVALID_SECURITY);
+ }
+ }
+ private void checkSignatures(SoapMessage msg, RequestData reqData,
Vector wsResult)
+ throws WSSecurityException {
+ /*
+ * Now we can check the certificate used to sign the message. In
the
+ * following implementation the certificate is only trusted if
+ * either it itself or the certificate of the issuer is installed
in
+ * the keystore. Note: the method verifyTrust(X509Certificate)
+ * allows custom implementations with other validation algorithms
+ * for subclasses.
+ */
+
+ // Extract the signature action result from the action vector
+ Vector signatureResults = new Vector();
+ signatureResults =
+ WSSecurityUtil.fetchAllActionResults(wsResult,
WSConstants.SIGN, signatureResults);
+
+ if (!signatureResults.isEmpty()) {
+ for (int i = 0; i < signatureResults.size(); i++) {
+ WSSecurityEngineResult result =
+ (WSSecurityEngineResult) signatureResults.get(i);
+
+ X509Certificate returnCert = (X509Certificate)result
+ .get(WSSecurityEngineResult.TAG_X509_CERTIFICATE);
+
+ if (returnCert != null && !verifyTrust(returnCert,
reqData)) {
+ LOG.info("The certificate used for the signature is
not trusted");
+ throw new
WSSecurityException(WSSecurityException.FAILED_CHECK);
+ }
+ msg.put(SIGNATURE_RESULT, result);
+ }
+ }
+ }
+
+ protected void checkTimestamps(SoapMessage msg, RequestData reqData,
Vector wsResult)
+ throws WSSecurityException {
+ /*
+ * Perform further checks on the timestamp that was transmitted in
+ * the header. In the following implementation the timestamp is
+ * valid if it was created after (now-ttl), where ttl is set on
+ * server side, not by the client. Note: the method
+ * verifyTimestamp(Timestamp) allows custom implementations with
+ * other validation algorithms for subclasses.
+ */
+ // Extract the timestamp action result from the action vector
+ Vector timestampResults = new Vector();
+ timestampResults =
+ WSSecurityUtil.fetchAllActionResults(wsResult, WSConstants.TS,
timestampResults);
+
+ if (!timestampResults.isEmpty()) {
+ for (int i = 0; i < timestampResults.size(); i++) {
+ WSSecurityEngineResult result =
+ (WSSecurityEngineResult) timestampResults.get(i);
+ Timestamp timestamp =
(Timestamp)result.get(WSSecurityEngineResult.TAG_TIMESTAMP);
+
+ if (timestamp != null && !verifyTimestamp(timestamp,
decodeTimeToLive(reqData))) {
+ LOG.info("The timestamp could not be validated");
+ throw new
WSSecurityException(WSSecurityException.MESSAGE_EXPIRED);
+ }
+ msg.put(TIMESTAMP_RESULT, result);
+ }
+ }
+ }
+
+ /**
+ * Do whatever is necessary to determine the action for the incoming
message and
+ * do whatever other setup work is necessary.
+ *
+ * @param msg
+ * @param reqData
+ */
+ protected void computeAction(SoapMessage msg, RequestData reqData) {
+
+ }
+ protected void doResults(SoapMessage msg, String actor, SOAPMessage
doc, Vector wsResult)
+ throws SOAPException, XMLStreamException, WSSecurityException {
+ /*
+ * All ok up to this point. Now construct and setup the security
result
+ * structure. The service may fetch this and check it.
+ */
+ List<Object> results =
CastUtils.cast((List)msg.get(WSHandlerConstants.RECV_RESULTS));
+ if (results == null) {
+ results = new Vector<Object>();
+ msg.put(WSHandlerConstants.RECV_RESULTS, results);
+ }
+ WSHandlerResult rResult = new WSHandlerResult(actor, wsResult);
+ results.add(0, rResult);
+
+ SOAPBody body = doc.getSOAPBody();
+
+ XMLStreamReader reader = StaxUtils.createXMLStreamReader(new
DOMSource(body));
+ // advance just past body
+ int evt = reader.next();
+ int i = 0;
+ while (reader.hasNext() && i < 1
+ && (evt != XMLStreamConstants.END_ELEMENT || evt !=
XMLStreamConstants.START_ELEMENT)) {
+ reader.next();
+ i++;
+ }
+ msg.setContent(XMLStreamReader.class, reader);
+ String pwType = (String)getProperty(msg, "passwordType");
+ if ("PasswordDigest".equals(pwType)) {
+ //CXF-2150 - we need to check the UsernameTokens
+ for (WSSecurityEngineResult o : CastUtils.cast(wsResult,
WSSecurityEngineResult.class)) {
+ Integer actInt =
(Integer)o.get(WSSecurityEngineResult.TAG_ACTION);
+ if (actInt == WSConstants.UT) {
+ WSUsernameTokenPrincipal princ
+ =
(WSUsernameTokenPrincipal)o.get(WSSecurityEngineResult.TAG_PRINCIPAL);
+ if (!princ.isPasswordDigest()) {
+ LOG.info("Non-digest UsernameToken found, but
digest required");
+ throw new
WSSecurityException(WSSecurityException.INVALID_SECURITY);
+ }
+ }
+ }
+ }
+ if (wsResult != null) {
+ for (WSSecurityEngineResult o : CastUtils.cast(wsResult,
WSSecurityEngineResult.class)) {
+ final Principal p =
(Principal)o.get(WSSecurityEngineResult.TAG_PRINCIPAL);
+ if (p != null) {
+ msg.put(PRINCIPAL_RESULT, p);
+ SecurityContext sc = msg.get(SecurityContext.class);
+ if (sc == null || sc.getUserPrincipal() == null) {
+ SecurityContext c = new SecurityContext() {
+ public Principal getUserPrincipal() {
+ return p;
+ }
+ public boolean isUserInRole(String role) {
+ return false;
+ }
+ };
+ msg.put(SecurityContext.class, c);
+ break;
+ }
+ }
+ }
+ }
+ }
+
+ private String getAction(SoapMessage msg, SoapVersion version) {
+ LOG.info("INTERCEPTOR getAction called.");
+ String action = (String)getOption(WSHandlerConstants.ACTION);
+ if (action == null) {
+ action = (String)msg.get(WSHandlerConstants.ACTION);
+ }
+ if (action == null) {
+ LOG.info("No security action was defined!");
+ throw new SoapFault("No security action was defined!",
version.getReceiver());
+ }
+ return action;
+ }
+
+ private class TokenStoreCallbackHandler implements CallbackHandler {
+ private CallbackHandler internal;
+ private TokenStore store;
+ public TokenStoreCallbackHandler(CallbackHandler in,
+ TokenStore st) {
+ internal = in;
+ store = st;
+ }
+
+ public void handle(Callback[] callbacks) throws IOException,
UnsupportedCallbackException {
+ for (int i = 0; i < callbacks.length; i++) {
+ WSPasswordCallback pc = (WSPasswordCallback)callbacks[i];
+
+ String id = pc.getIdentifier();
+
+ if
(SecurityTokenReference.ENC_KEY_SHA1_URI.equals(pc.getKeyType())) {
+ for (SecurityToken token : store.getValidTokens()) {
+ if (id.equals(token.getSHA1())) {
+ pc.setKey(token.getSecret());
+ return;
+ }
+ }
+ } else {
+ SecurityToken tok = store.getToken(id);
+ if (tok != null) {
+ pc.setKey(tok.getSecret());
+ pc.setCustomToken(tok.getToken());
+ return;
+ }
+ }
+ }
+ if (internal != null) {
+ internal.handle(callbacks);
+ }
+ }
+
+ }
+
+ private CallbackHandler getCallback(RequestData reqData, int doAction)
throws WSSecurityException {
+ /*
+ * To check a UsernameToken or to decrypt an encrypted message we
need a
+ * password.
+ */
+ CallbackHandler cbHandler = null;
+ if ((doAction & (WSConstants.ENCR | WSConstants.UT)) != 0) {
+ Object o = ((SoapMessage)reqData.getMsgContext())
+ .getContextualProperty(SecurityConstants.CALLBACK_HANDLER);
+ if (o instanceof String) {
+ try {
+ o = ClassLoaderUtils.loadClass((String)o,
this.getClass()).newInstance();
+ } catch (Exception e) {
+ throw new WSSecurityException(e.getMessage(), e);
+ }
+ }
+ if (o instanceof CallbackHandler) {
+ cbHandler = (CallbackHandler)o;
+ }
+ if (cbHandler == null) {
+ try {
+ cbHandler = getPasswordCB(reqData);
+ } catch (WSSecurityException sec) {
+ Endpoint ep =
((SoapMessage)reqData.getMsgContext()).getExchange().get(Endpoint.class);
+ if (ep != null && ep.getEndpointInfo() != null) {
+ TokenStore store = (TokenStore)ep.getEndpointInfo()
+ .getProperty(TokenStore.class.getName());
+ if (store != null) {
+ return new
TokenStoreCallbackHandler(cbHandler, store);
+ }
+ }
+ throw sec;
+ }
+ }
+ }
+ Endpoint ep =
((SoapMessage)reqData.getMsgContext()).getExchange().get(Endpoint.class);
+ if (ep != null && ep.getEndpointInfo() != null) {
+ TokenStore store =
(TokenStore)ep.getEndpointInfo().getProperty(TokenStore.class.getName());
+ if (store != null) {
+ return new TokenStoreCallbackHandler(cbHandler, store);
+ }
+ }
+ return cbHandler;
+ }
+
+
+
+ /**
+ * @return the WSSecurityEngine in use by this interceptor.
+ * This engine is defined to be the secEngineOverride
+ * instance, if defined in this class (and supplied
through
+ * construction); otherwise, it is taken to be the default
+ * WSSecEngine instance (currently defined in the
WSHandler
+ * base class).
+ *
+ * TODO the WSHandler base class defines secEngine to be static, which
+ * is really bad, because the engine has mutable state on it.
+ */
+ private WSSecurityEngine getSecurityEngine() {
+ if (secEngineOverride != null) {
+ return secEngineOverride;
+ }
+ WSSecurityEngine s = WSSecurityEngine.getInstance();
+
+ //check if secEngine has anything in it
+ LOG.info("secEngine=" + this.secEngine);
+ LOG.info("secEngine config=" + this.secEngine.getWssConfig());
+
+ return s;
+
+ //s.setWssConfig(secEngine.getWssConfig());
+
+
+ //this.secEngine.getWssConfig()
+ //return secEngine;
+ }
+
+
+ /**
+ * @return a freshly minted WSSecurityEngine instance, using the
+ * (non-null) processor map, to be used to initialize the
+ * WSSecurityEngine instance.
+ *
+ * TODO The WSS4J APIs leave something to be desired here, but
hopefully
+ * we'll clean all this up in WSS4J-2.0
+ */
+ private static WSSecurityEngine createSecurityEngine( final
Map<QName, Object> map ) {
+ assert map != null;
+ final WSSConfig config = WSSConfig.getNewInstance();
+ for (Map.Entry<QName, Object> entry : map.entrySet()) {
+ final QName key = entry.getKey();
+ Object val = entry.getValue();
+
+ if (val instanceof String) {
+ String valStr = ((String)val).trim();
+ if ("null".equals(valStr) || valStr.length() == 0) {
+ valStr = null;
+ }
+ config.setProcessor(key, valStr);
+ } else if (val instanceof Processor) {
+ config.setProcessor(key, (Processor)val);
+ } else if (val == null) {
+ config.setProcessor(key, (String)val);
+ }
+ }
+ final WSSecurityEngine ret = new WSSecurityEngine();
+ ret.setWssConfig(config);
+ return ret;
+ }
+
+
+ /**
+ * Create a SoapFault from a WSSecurityException, following the SOAP
Message Security
+ * 1.1 specification, chapter 12 "Error Handling".
+ *
+ * When the Soap version is 1.1 then set the Fault/Code/Value from the
fault code
+ * specified in the WSSecurityException (if it exists).
+ *
+ * Otherwise set the Fault/Code/Value to env:Sender and the
Fault/Code/Subcode/Value
+ * as the fault code from the WSSecurityException.
+ */
+ private SoapFault createSoapFault(SoapVersion version,
WSSecurityException e) {
+ SoapFault fault;
+ javax.xml.namespace.QName faultCode = e.getFaultCode();
+ if (version.getVersion() == 1.1 && faultCode != null) {
+ fault = new SoapFault(e.getMessage(), e, faultCode);
+ } else {
+ fault = new SoapFault(e.getMessage(), e, version.getSender());
+ if (version.getVersion() != 1.1 && faultCode != null) {
+ fault.setSubCode(faultCode);
+ }
+ }
+ return fault;
+ }
+
+}
=======================================
--- /dev/null
+++
/trunk/iam-interceptor/src/main/java/org/openiam/intercept/wssec/WSSConfig.java
Wed Jun 9 22:23:19 2010
@@ -0,0 +1,621 @@
+/*
+ * Copyright 2003-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *
http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.openiam.intercept.wssec;
+
+import java.util.HashMap;
+
+import javax.xml.namespace.QName;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.ws.security.WSSecurityException;
+import org.apache.ws.security.WsuIdAllocator;
+import org.apache.ws.security.action.Action;
+import org.apache.ws.security.processor.Processor;
+import org.apache.ws.security.transform.STRTransform;
+import org.apache.ws.security.util.Loader;
+import org.apache.ws.security.util.UUIDGenerator;
+import org.apache.xml.security.transforms.Transform;
+
+/**
+ * WSSConfig <p/> Carries configuration data so the WSS4J spec compliance
can be
+ * modified in runtime. Configure an instance of this object only if you
need
+ * WSS4J to emulate certain industry clients or previous OASIS
specifications
+ * for WS-Security interoperability testing purposes. <p/> The default
settings
+ * follow the latest OASIS and changing anything might violate the OASIS
specs.
+ * <p/> <b>WARNING: changing the default settings will break the
compliance with
+ * the latest specs. Do this only if you know what you are doing.</b> <p/>
+ *
+ * @author Rami Jaamour (
rjaa...@parasoft.com)
+ * @author Werner Dittmann (
wer...@apache.org)
+ */
+public class WSSConfig {
+
+ private static final Log log =
LogFactory.getLog(WSSConfig.class.getName());
+
+ /**
+ * The default collection of actions supported by the toolkit.
+ */
+ private static final java.util.Map DEFAULT_ACTIONS;
+ static {
+ final java.util.Map tmp = new java.util.HashMap();
+ try {
+ tmp.put(
+ new Integer(WSConstants.UT),
+
org.apache.ws.security.action.UsernameTokenAction.class.getName()
+ );
+ tmp.put(
+ new Integer(WSConstants.ENCR),
+
org.apache.ws.security.action.EncryptionAction.class.getName()
+ );
+ tmp.put(
+ new Integer(WSConstants.SIGN),
+
org.apache.ws.security.action.SignatureAction.class.getName()
+ );
+ //
+ // Note that all actions/processors with dependencies on
opensaml are
+ // registered as Strings. This is so that applications that do
not use
+ // saml do not have to have the opensaml jar available.
+ //
+ tmp.put(
+ new Integer(WSConstants.ST_SIGNED),
+ "org.apache.ws.security.action.SAMLTokenSignedAction"
+ );
+ tmp.put(
+ new Integer(WSConstants.ST_UNSIGNED),
+ "org.apache.ws.security.action.SAMLTokenUnsignedAction"
+ );
+ tmp.put(
+ new Integer(WSConstants.TS),
+
org.apache.ws.security.action.TimestampAction.class.getName()
+ );
+ tmp.put(
+ new Integer(WSConstants.UT_SIGN),
+
org.apache.ws.security.action.UsernameTokenSignedAction.class.getName()
+ );
+ tmp.put(
+ new Integer(WSConstants.SC),
+
org.apache.ws.security.action.SignatureConfirmationAction.class.getName()
+ );
+ } catch (final Throwable t) {
+ if (log.isDebugEnabled()) {
+ log.debug(t.getMessage(), t);
+ }
+ }
+ DEFAULT_ACTIONS = java.util.Collections.unmodifiableMap(tmp);
+ }
+
+ /**
+ * The default collection of processors supported by the toolkit
+ */
+ private static final java.util.Map DEFAULT_PROCESSORS;
+ static {
+ final java.util.Map tmp = new java.util.HashMap();
+ try {
+ tmp.put(
+ WSSecurityEngine.SAML_TOKEN,
+ "org.apache.ws.security.processor.SAMLTokenProcessor"
+ );
+ tmp.put(
+ WSSecurityEngine.ENCRYPTED_KEY,
+
org.apache.ws.security.processor.EncryptedKeyProcessor.class.getName()
+ );
+ tmp.put(
+ WSSecurityEngine.SIGNATURE,
+
org.apache.ws.security.processor.SignatureProcessor.class.getName()
+ );
+ tmp.put(
+ WSSecurityEngine.timeStamp,
+
org.apache.ws.security.processor.TimestampProcessor.class.getName()
+ );
+ tmp.put(
+ WSSecurityEngine.usernameToken,
+
org.apache.ws.security.processor.UsernameTokenProcessor.class.getName()
+ );
+ tmp.put(
+ WSSecurityEngine.REFERENCE_LIST,
+
org.apache.ws.security.processor.ReferenceListProcessor.class.getName()
+ );
+ tmp.put(
+ WSSecurityEngine.signatureConfirmation,
+
org.apache.ws.security.processor.SignatureConfirmationProcessor.class.getName()
+ );
+ tmp.put(
+ WSSecurityEngine.DERIVED_KEY_TOKEN_05_02,
+
org.apache.ws.security.processor.DerivedKeyTokenProcessor.class.getName()
+ );
+ tmp.put(
+ WSSecurityEngine.DERIVED_KEY_TOKEN_05_12,
+ tmp.get(WSSecurityEngine.DERIVED_KEY_TOKEN_05_02)
+ );
+ tmp.put(
+ WSSecurityEngine.SECURITY_CONTEXT_TOKEN_05_02,
+
org.apache.ws.security.processor.SecurityContextTokenProcessor.class.getName()
+ );
+ tmp.put(
+ WSSecurityEngine.SECURITY_CONTEXT_TOKEN_05_12,
+ tmp.get(WSSecurityEngine.SECURITY_CONTEXT_TOKEN_05_02)
+ );
+ tmp.put(
+ WSSecurityEngine.binaryToken,
+
org.apache.ws.security.processor.BinarySecurityTokenProcessor.class.getName()
+ );
+ tmp.put(
+ WSSecurityEngine.ENCRYPTED_DATA,
+
org.apache.ws.security.processor.EncryptedDataProcessor.class.getName()
+ );
+ } catch (final Throwable t) {
+ if (log.isDebugEnabled()) {
+ log.debug(t.getMessage(), t);
+ }
+ }
+ DEFAULT_PROCESSORS = java.util.Collections.unmodifiableMap(tmp);
+ }
+
+ protected static WSSConfig defaultConfig = null;
+
+ protected boolean wsiBSPCompliant = false;
+
+ /**
+ * Set the timestamp precision mode. If set to <code>true</code> then
use
+ * timestamps with milliseconds, otherwise omit the milliseconds. As
per XML
+ * Date/Time specification the default is to include the milliseconds.
+ */
+ protected boolean precisionInMilliSeconds = true;
+
+ protected boolean enableSignatureConfirmation = true;
+
+ /**
+ * If set to true then the timestamp handling will throw an exception
if the
+ * timestamp contains an expires element and the semantics are expired.
+ *
+ * If set to false, no exception will be thrown, even if the semantics
are
+ * expired.
+ */
+ protected boolean timeStampStrict = true;
+
+ /**
+ * This variable controls whether types other than PasswordDigest or
PasswordText
+ * are allowed when processing UsernameTokens.
+ *
+ * By default this is set to false so that the user doesn't have to
explicitly
+ * reject custom token types in the callback handler.
+ */
+ protected boolean handleCustomPasswordTypes = false;
+
+ /**
+ * This variable controls whether (wsse) namespace qualified password
types are
+ * accepted when processing UsernameTokens.
+ *
+ * By default this is set to false.
+ */
+ protected boolean allowNamespaceQualifiedPasswordTypes = false;
+
+
+ /**
+ * The default wsu:Id allocator is a simple "start at 1 and increment
up"
+ * thing that is very fast.
+ */
+ public static WsuIdAllocator DEFAULT_ID_ALLOCATOR = new
WsuIdAllocator() {
+ int i;
+ private synchronized String next() {
+ return Integer.toString(++i);
+ }
+ public String createId(String prefix, Object o) {
+ if (prefix == null) {
+ return next();
+ }
+ return prefix + next();
+ }
+
+ public String createSecureId(String prefix, Object o) {
+ if (prefix == null) {
+ return UUIDGenerator.getUUID();
+ }
+ return prefix + UUIDGenerator.getUUID();
+ }
+ };
+ protected WsuIdAllocator idAllocator = DEFAULT_ID_ALLOCATOR;
+
+ protected HashMap jceProvider = new HashMap(10);
+
+ /**
+ * The known actions. This map is of the form <Integer, String> or
<Integer, Action>.
+ * The known actions are initialized from a set of defaults,
+ * but the list may be modified via the setAction operations.
+ */
+ private final java.util.Map actionMap = new
java.util.HashMap(DEFAULT_ACTIONS);
+
+ /**
+ * The known processors. This map is of the form <String, String> or
<String,Processor>.
+ * The known processors are initialized from a set of defaults,
+ * but the list may be modified via the setProcessor operations.
+ */
+ private final java.util.Map processorMap = new
java.util.HashMap(DEFAULT_PROCESSORS);
+
+ /**
+ * a static boolean flag that determines whether default JCE providers
+ * should be added at the time of construction.
+ *
+ * These providers, and the order in which they are added, can
interfere
+ * with some JVMs (such as IBMs).
+ */
+ private static boolean addJceProviders = true;
+
+ /**
+ * a boolean flag to record whether we have already been statically
+ * initialized. This flag prevents repeated and unnecessary calls
+ * to static initialization code at construction time.
+ */
+ private static boolean staticallyInitialized = false;
+
+ /**
+ * Set the value of the internal addJceProviders flag. This flag
+ * turns on (or off) automatic registration of known JCE providers
+ * that provide necessary cryptographic algorithms for use with WSS4J.
+ * By default, this flag is true, for backwards compatibility. You may
+ * wish (or need) to initialize the JCE manually, e.g., in some JVMs.
+ */
+ public static void setAddJceProviders(boolean value) {
+ addJceProviders = value;
+ }
+
+ private synchronized void
+ staticInit() {
+ if (!staticallyInitialized) {
+ org.apache.xml.security.Init.init();
+ if (addJceProviders) {
+ /*
+ * The last provider added has precedence, that is if
JuiCE can be added
+ * then WSS4J uses this provider.
+ */
+
addJceProvider("BC", "org.bouncycastle.jce.provider.BouncyCastleProvider");
+
addJceProvider("JuiCE", "org.apache.security.juice.provider.JuiCEProviderOpenSSL");
+ }
+ Transform.init();
+ try {
+ Transform.register(
+ STRTransform.implementedTransformURI,
+ "org.apache.ws.security.transform.STRTransform"
+ );
+ } catch (Exception ex) {
+ if (log.isDebugEnabled()) {
+ log.debug(ex.getMessage(), ex);
+ }
+ }
+ staticallyInitialized = true;
+ }
+ }
+
+ protected WSSConfig() {
+ staticInit();
+ }
+
+ /**
+ * @return a new WSSConfig instance configured with the default values
+ * (values identical to
+ * {@link #getDefaultWSConfig getDefaultWSConfig()})
+ */
+ public static WSSConfig getNewInstance() {
+ return new WSSConfig();
+ }
+
+ /**
+ * returns a static WSConfig instance that is configured with the
latest
+ * OASIS WS-Security settings.
+ */
+ public static WSSConfig getDefaultWSConfig() {
+ if (defaultConfig == null) {
+ defaultConfig = getNewInstance();
+ }
+ return defaultConfig;
+ }
+
+ /**
+ * Checks if we are in WS-I Basic Security Profile compliance mode
+ *
+ * @return TODO
+ */
+ public boolean isWsiBSPCompliant() {
+ return wsiBSPCompliant;
+ }
+
+ /**
+ * Set the WS-I Basic Security Profile compliance mode. The default is
false
+ * (dues to .Net interop problems).
+ *
+ * @param wsiBSPCompliant
+ */
+ public void setWsiBSPCompliant(boolean wsiBSPCompliant) {
+ this.wsiBSPCompliant = wsiBSPCompliant;
+ }
+
+ /**
+ * Checks if we need to use milliseconds in timestamps
+ *
+ * @return TODO
+ */
+ public boolean isPrecisionInMilliSeconds() {
+ return precisionInMilliSeconds;
+ }
+
+ /**
+ * Set the precision in milliseconds
+ *
+ * @param precisionInMilliSeconds
+ * TODO
+ */
+ public void setPrecisionInMilliSeconds(boolean
precisionInMilliSeconds) {
+ this.precisionInMilliSeconds = precisionInMilliSeconds;
+ }
+
+ /**
+ * @return Returns the enableSignatureConfirmation.
+ */
+ public boolean isEnableSignatureConfirmation() {
+ return enableSignatureConfirmation;
+ }
+
+ /**
+ * @param enableSignatureConfirmation
+ * The enableSignatureConfirmation to set.
+ */
+ public void setEnableSignatureConfirmation(boolean
enableSignatureConfirmation) {
+ this.enableSignatureConfirmation = enableSignatureConfirmation;
+ }
+
+ /**
+ * @param handleCustomTypes
+ * whether to handle custom UsernameToken password types or not
+ */
+ public void setHandleCustomPasswordTypes(boolean handleCustomTypes) {
+ this.handleCustomPasswordTypes = handleCustomTypes;
+ }
+
+ /**
+ * @return whether custom UsernameToken password types are allowed or
not
+ */
+ public boolean getHandleCustomPasswordTypes() {
+ return handleCustomPasswordTypes;
+ }
+
+ /**
+ * @param allowNamespaceQualifiedTypes
+ * whether (wsse) namespace qualified password types are accepted or
not
+ */
+ public void setAllowNamespaceQualifiedPasswordTypes(boolean
allowNamespaceQualifiedTypes) {
+ allowNamespaceQualifiedPasswordTypes =
allowNamespaceQualifiedTypes;
+ }
+
+ /**
+ * @return whether (wsse) namespace qualified password types are
accepted or not
+ */
+ public boolean getAllowNamespaceQualifiedPasswordTypes() {
+ return allowNamespaceQualifiedPasswordTypes;
+ }
+
+ /**
+ * @return Returns if we shall throw an exception on expired request
+ * semantic
+ */
+ public boolean isTimeStampStrict() {
+ return timeStampStrict;
+ }
+
+ /**
+ * @param timeStampStrict
+ * If true throw an exception on expired request semantic
+ */
+ public void setTimeStampStrict(boolean timeStampStrict) {
+ this.timeStampStrict = timeStampStrict;
+ }
+
+ /**
+ * @return Returns the WsuIdAllocator used to generate wsu:Id
attributes
+ */
+ public WsuIdAllocator getIdAllocator() {
+ return idAllocator;
+ }
+
+ public void setIdAllocator(WsuIdAllocator idAllocator) {
+ this.idAllocator = idAllocator;
+ }
+
+ /**
+ * Associate an action name with a specific action code.
+ *
+ * This operation allows applications to supply their own
+ * actions for well-known operations.
+ */
+ public String setAction(int code, String action) {
+ Object previousAction = actionMap.put(new Integer(code), action);
+ if (previousAction instanceof String) {
+ return (String)previousAction;
+ } else if (previousAction instanceof Action){
+ return previousAction.getClass().getName();
+ }
+ return null;
+ }
+
+ /**
+ * Associate an action instance with a specific action code.
+ *
+ * This operation allows applications to supply their own
+ * actions for well-known operations.
+ */
+ public String setAction(int code, Action action) {
+ Object previousAction = actionMap.put(new Integer(code), action);
+ if (previousAction instanceof String) {
+ return (String)previousAction;
+ } else if (previousAction instanceof Action){
+ return previousAction.getClass().getName();
+ }
+ return null;
+ }
+
+ /**
+ * Lookup action
+ *
+ * @param action
+ * @return An action class to create a security token
+ * @throws WSSecurityException
+ */
+ public Action getAction(int action) throws WSSecurityException {
+ Integer key = new Integer(action);
+ final Object actionObject = actionMap.get(key);
+
+ if (actionObject instanceof String) {
+ final String name = (String)actionObject;
+ try {
+ return (Action) Loader.loadClass(name).newInstance();
+ } catch (Throwable t) {
+ if (log.isDebugEnabled()) {
+ log.debug(t.getMessage(), t);
+ }
+ throw new WSSecurityException(WSSecurityException.FAILURE,
+ "unableToLoadClass", new Object[] { name }, t);
+ }
+ } else if (actionObject instanceof Action) {
+ return (Action)actionObject;
+ }
+ return null;
+ }
+
+ /**
+ * Associate a SOAP processor name with a specified SOAP Security
header
+ * element QName. Processors registered under this QName will be
+ * called when processing header elements with the specified type.
+ */
+ public String setProcessor(QName el, String name) {
+ Object previousProcessor = processorMap.put(el, name);
+ if (previousProcessor instanceof String) {
+ return (String)previousProcessor;
+ } else if (previousProcessor instanceof Processor){
+ return previousProcessor.getClass().getName();
+ }
+ return null;
+ }
+
+ /**
+ * Associate a SOAP processor instance with a specified SOAP Security
header
+ * element QName. Processors registered under this QName will be
+ * called when processing header elements with the specified type.
+ */
+ public String setProcessor(QName el, Processor processor) {
+ Object previousProcessor = processorMap.put(el, processor);
+ if (previousProcessor instanceof String) {
+ return (String)previousProcessor;
+ } else if (previousProcessor instanceof Processor){
+ return previousProcessor.getClass().getName();
+ }
+ return null;
+ }
+
+ /**
+ * @return the SOAP processor associated with the specified
+ * QName. The QName is intended to refer to an element
+ * in a SOAP security header. This operation returns
+ * null if there is no processor associated with the
+ * specified QName.
+ */
+ public Processor getProcessor(QName el) throws WSSecurityException {
+ final Object processorObject = processorMap.get(el);
+ if (processorObject instanceof String) {
+ final String name = (String)processorObject;
+ try {
+ return (Processor) Loader.loadClass(name).newInstance();
+ } catch (Throwable t) {
+ if (log.isDebugEnabled()) {
+ log.debug(t.getMessage(), t);
+ }
+ throw new WSSecurityException(WSSecurityException.FAILURE,
+ "unableToLoadClass", new Object[] { name }, t);
+ }
+ } else if (processorObject instanceof Processor) {
+ return (Processor)processorObject;
+ }
+ return null;
+ }
+
+ private boolean loadProvider(String id, String className) {
+ try {
+ if (java.security.Security.getProvider(id) == null) {
+ Class c = Loader.loadClass(className, false);
+ java.security.Provider[] provs =
+ java.security.Security.getProviders();
+ //
+ // Install the provider after the SUN provider (see WSS-99)
+ // Otherwise fall back to the old behaviour of inserting
+ // the provider in position 2. For AIX, install it after
+ // the IBMJCE provider.
+ //
+ int ret = 0;
+ for (int i = 0; i < provs.length; i++) {
+ if ("SUN".equals(provs[i].getName())
+ || "IBMJCE".equals(provs[i].getName())) {
+ ret =
+ java.security.Security.insertProviderAt(
+ (java.security.Provider) c.newInstance(),
i + 2
+ );
+ break;
+ }
+ }
+ if (ret == 0) {
+ ret =
+ java.security.Security.insertProviderAt(
+ (java.security.Provider) c.newInstance(), 2
+ );
+ }
+ if (log.isDebugEnabled()) {
+ log.debug("The provider " + id + " was added at
position: " + ret);
+ }
+ }
+ return true;
+ } catch (Throwable t) {
+ if (log.isDebugEnabled()) {
+ log.debug("The provider " + id + " could not be added: " +
t.getMessage());
+ }
+ return false;
+ }
+
+ }
+
+ /**
+ * Add a new JCE security provider to use for WSS4J.
+ *
+ * If the provider is not already known the method loads a security
provider
+ * class and adds the provider to the java security service.
+ *
+ *
+ * @param id
+ * The id string of the provider
+ * @param className
+ * Name of the class the implements the provider. This
class must
+ * be a subclass of <code>java.security.Provider</code>
+ *
+ * @return Returns <code>true</code> if the provider was successfully
+ * added, <code>false</code> otherwise.
+ */
+ public boolean addJceProvider(String id, String className) {
+ if (jceProvider.get(id) == null && loadProvider(id, className)) {
+ jceProvider.put(id, className);
+ return true;
+ }
+ return false;
+ }
+}
=======================================
--- /dev/null
+++
/trunk/iam-interceptor/src/main/java/org/openiam/intercept/wssec/WSSecurityEngine.java
Wed Jun 9 22:23:19 2010
@@ -0,0 +1,343 @@
+/*
+ * Copyright 2003-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *
http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.openiam.intercept.wssec;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.ws.security.SOAPConstants;
+import org.apache.ws.security.WSDocInfo;
+import org.apache.ws.security.WSSecurityException;
+import org.apache.ws.security.components.crypto.Crypto;
+import org.apache.ws.security.conversation.ConversationConstants;
+import org.apache.ws.security.message.token.UsernameToken;
+import org.apache.ws.security.processor.Processor;
+import org.apache.ws.security.util.WSSecurityUtil;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+
+import javax.security.auth.callback.CallbackHandler;
+import javax.xml.namespace.QName;
+
+import java.util.Vector;
+
+
+public class WSSecurityEngine {
+ public static final String VALUE_TYPE = "ValueType";
+
+ private static final Log log=
LogFactory.getLog(WSSecurityEngine.class);
+
+
+ private static WSSecurityEngine engine = null;
+
+ /**
+ * The WSSConfig instance used by this SecurityEngine to
+ * find Processors for processing security headers
+ */
+ private WSSConfig wssConfig = null;
+ private boolean doDebug = false;
+ /**
+ * <code>wsse:BinarySecurityToken</code> as defined by WS Security
specification
+ */
+ public static final QName binaryToken =
+ new QName(WSConstants.WSSE_NS, WSConstants.BINARY_TOKEN_LN);
+ /**
+ * <code>wsse:UsernameToken</code> as defined by WS Security
specification
+ */
+ public static final QName usernameToken =
+ new QName(WSConstants.WSSE_NS, WSConstants.USERNAME_TOKEN_LN);
+ /**
+ * <code>wsu:Timestamp</code> as defined by OASIS WS Security
specification,
+ */
+ public static final QName timeStamp =
+ new QName(WSConstants.WSU_NS, WSConstants.TIMESTAMP_TOKEN_LN);
+ /**
+ * <code>wsse11:signatureConfirmation</code> as defined by OASIS WS
Security specification,
+ */
+ public static final QName signatureConfirmation =
+ new QName(WSConstants.WSSE11_NS,
WSConstants.SIGNATURE_CONFIRMATION_LN);
+ /**
+ * <code>ds:Signature</code> as defined by XML Signature specification,
+ * enhanced by WS Security specification
+ */
+ public static final QName SIGNATURE =
+ new QName(WSConstants.SIG_NS, WSConstants.SIG_LN);
+ /**
+ * <code>xenc:EncryptedKey</code> as defined by XML Encryption
specification,
+ * enhanced by WS Security specification
+ */
+ public static final QName ENCRYPTED_KEY =
+ new QName(WSConstants.ENC_NS, WSConstants.ENC_KEY_LN);
+ /**
+ * <code>xenc:EncryptedData</code> as defined by XML Encryption
specification,
+ * enhanced by WS Security specification
+ */
+ public static final QName ENCRYPTED_DATA =
+ new QName(WSConstants.ENC_NS, WSConstants.ENC_DATA_LN);
+ /**
+ * <code>xenc:ReferenceList</code> as defined by XML Encryption
specification,
+ */
+ public static final QName REFERENCE_LIST =
+ new QName(WSConstants.ENC_NS, WSConstants.REF_LIST_LN);
+ /**
+ * <code>saml:Assertion</code> as defined by SAML specification
+ */
+ public static final QName SAML_TOKEN =
+ new QName(WSConstants.SAML_NS, WSConstants.ASSERTION_LN);
+
+ /**
+ * <code>wsc:DerivedKeyToken</code> as defined by
WS-SecureConversation specification
+ */
+ public static final QName DERIVED_KEY_TOKEN_05_02 =
+ new QName(ConversationConstants.WSC_NS_05_02,
ConversationConstants.DERIVED_KEY_TOKEN_LN);
+
+ /**
+ * <code>wsc:SecurityContextToken</code> as defined by
WS-SecureConversation specification
+ */
+ public static final QName SECURITY_CONTEXT_TOKEN_05_02 =
+ new QName(ConversationConstants.WSC_NS_05_02,
ConversationConstants.SECURITY_CONTEXT_TOKEN_LN);
+
+ /**
+ * <code>wsc:DerivedKeyToken</code> as defined by
WS-SecureConversation specification in WS-SX
+ */
+ public static final QName DERIVED_KEY_TOKEN_05_12 =
+ new QName(ConversationConstants.WSC_NS_05_12,
ConversationConstants.DERIVED_KEY_TOKEN_LN);
+
+ /**
+ * <code>wsc:SecurityContextToken</code> as defined by
WS-SecureConversation specification in
+ * WS-SX
+ */
+ public static final QName SECURITY_CONTEXT_TOKEN_05_12 =
+ new QName(ConversationConstants.WSC_NS_05_12,
ConversationConstants.SECURITY_CONTEXT_TOKEN_LN);
+
+ public WSSecurityEngine() {
+ }
+
+ /**
+ * Get a singleton instance of security engine.
+ * <p/>
+ *
+ * @return ws-security engine.
+ */
+ public synchronized static WSSecurityEngine getInstance() {
+ if (engine == null) {
+ engine = new WSSecurityEngine();
+ }
+ return engine;
+ }
+
+ /**
+ * @return the WSSConfig object set on this instance, or
+ * the statically defined one, if the instance-level
+ * config object is null.
+ */
+ public final WSSConfig
+ getWssConfig() {
+ return (wssConfig == null) ? WSSConfig.getDefaultWSConfig() :
wssConfig;
+ }
+
+ /**
+ * @param cfg the WSSConfig instance for this WSSecurityEngine to use
+ *
+ * @return the WSSConfig instance previously set on this
+ * WSSecurityEngine instance
+ */
+ public final WSSConfig
+ setWssConfig(WSSConfig cfg) {
+ WSSConfig ret = wssConfig;
+ wssConfig = cfg;
+ return ret;
+ }
+
+
+
+
+ /**
+ * Process the security header given the soap envelope as W3C document.
+ * <p/>
+ * This is the main entry point to verify or decrypt a SOAP envelope.
+ * First check if a <code>wsse:Security</code> is available with the
+ * defined actor.
+ *
+ * @param doc the SOAP envelope as {@link Document}
+ * @param actor the engine works on behalf of this
<code>actor</code>. Refer
+ * to the SOAP specification about <code>actor</code> or
<code>role
+ * </code>
+ * @param cb a callback hander to the caller to resolve passwords
during
+ * encryption and {@link UsernameToken} handling
+ * @param crypto the object that implements the access to the keystore
and the
+ * handling of certificates.
+ * @return a result vector
+ * @throws WSSecurityException
+ * @see WSSecurityEngine#processSecurityHeader(Element securityHeader,
CallbackHandler cb,
+ * Crypto sigCrypto, Crypto decCrypto)
+ */
+ public Vector processSecurityHeader(Document doc,
+ String actor,
+ CallbackHandler cb,
+ Crypto crypto)
+ throws WSSecurityException {
+ return processSecurityHeader(doc, actor, cb, crypto, crypto);
+ }
+
+ /**
+ * Process the security header given the soap envelope as W3C document.
+ * <p/>
+ * This is the main entry point to verify or decrypt a SOAP envelope.
+ * First check if a <code>wsse:Security</code> is available with the
+ * defined actor.
+ *
+ * @param doc the SOAP envelope as {@link Document}
+ * @param actor the engine works on behalf of this
<code>actor</code>. Refer
+ * to the SOAP specification about <code>actor</code>
or <code>role
+ * </code>
+ * @param cb a callback hander to the caller to resolve
passwords during
+ * encryption and {@link UsernameToken} handling
+ * @param sigCrypto the object that implements the access to the
keystore and the
+ * handling of certificates for Signature
+ * @param decCrypto the object that implements the access to the
keystore and the
+ * handling of certificates for Decryption
+ * @return a result vector
+ * @throws WSSecurityException
+ * @see WSSecurityEngine#processSecurityHeader(
+ * Element securityHeader, CallbackHandler cb, Crypto sigCrypto,
Crypto decCrypto)
+ */
+ public Vector processSecurityHeader(Document doc,
+ String actor,
+ CallbackHandler cb,
+ Crypto sigCrypto,
+ Crypto decCrypto)
+ throws WSSecurityException {
+
+
log.info("processSecurityHeader with doc called.");
+
+ if (actor == null) {
+ actor = "";
+ }
+ Vector wsResult = null;
+ SOAPConstants sc =
SecurityUtil.getSOAPConstants(doc.getDocumentElement());
+ Element elem = SecurityUtil.getSecurityHeader(doc, actor, sc);
+
+ if (elem == null) {
+ return null;
+ }
+
+
log.info("Element in securityheader=" + elem);
+
log.info("Processing WS-Security header for '" + actor + "'
actor.");
+
+ if (elem != null) {
+
+ wsResult = processSecurityHeader(elem, cb, sigCrypto,
decCrypto);
+ }
+ return wsResult;
+ }
+
+ /**
+ * Process the security header given the <code>wsse:Security</code> DOM
+ * Element.
+ *
+ * This function loops over all direct child elements of the
+ * <code>wsse:Security</code> header. If it finds a known element, it
+ * transfers control to the appropriate handling function. The method
+ * processes the known child elements in the same order as they appear
in
+ * the <code>wsse:Security</code> element. This is in accordance to
the WS
+ * Security specification. <p/>
+ *
+ * Currently the functions can handle the following child elements:
+ *
+ * <ul>
+ * <li>{@link #SIGNATURE <code>ds:Signature</code>}</li>
+ * <li>{@link #ENCRYPTED_KEY <code>xenc:EncryptedKey</code>}</li>
+ * <li>{@link #REFERENCE_LIST <code>xenc:ReferenceList</code>}</li>
+ * <li>{@link #usernameToken <code>wsse:UsernameToken</code>}</li>
+ * <li>{@link #timeStamp <code>wsu:Timestamp</code>}</li>
+ * </ul>
+ *
+ * Note that additional child elements can be processed if appropriate
+ * Processors have been registered with the WSSCondig instance set
+ * on this class.
+ *
+ * @param securityHeader the <code>wsse:Security</code> header element
+ * @param cb a callback hander to the caller to resolve
passwords during
+ * encryption and {@link UsernameToken}handling
+ * @param sigCrypto the object that implements the access to the
keystore and the
+ * handling of certificates used for Signature
+ * @param decCrypto the object that implements the access to the
keystore and the
+ * handling of certificates used for Decryption
+ * @return a Vector of {@link WSSecurityEngineResult}. Each element in
the
+ * the Vector represents the result of a security action. The
elements
+ * are ordered according to the sequence of the security
actions in the
+ * wsse:Signature header. The Vector maybe empty if no
security processing
+ * was performed.
+ * @throws WSSecurityException
+ */
+ protected Vector processSecurityHeader(Element securityHeader,
+ CallbackHandler cb,
+ Crypto sigCrypto,
+ Crypto decCrypto) throws
WSSecurityException {
+
+
log.info("processSecurityHeader called.");
+
+ /*
+ * Gather some info about the document to process and store
+ * it for retrieval. Store the implementation of signature crypto
+ * (no need for encryption --- yet)
+ */
+ WSDocInfo wsDocInfo = new
WSDocInfo(securityHeader.getOwnerDocument());
+ wsDocInfo.setCrypto(sigCrypto);
+
+ NodeList list = securityHeader.getChildNodes();
+
log.info("SecurityHeader nodeList" + list);
+
+ int len = list.getLength();
+ Node elem;
+
+ Vector returnResults = new Vector();
+
+ for (int i = 0; i < len; i++) {
+ elem = list.item(i);
+ if (elem.getNodeType() != Node.ELEMENT_NODE) {
+ continue;
+ }
+
log.info("element localname=" + elem.getLocalName());
+ QName el = new QName(elem.getNamespaceURI(),
elem.getLocalName());
+ final WSSConfig cfg = getWssConfig();
+ Processor p = cfg.getProcessor(el);
+ /*
+ * Call the processor for this token. After the processor
returns,
+ * store it for later retrieval. The token processor may store
some
+ * information about the processed token
+ */
+ if (p != null) {
+
log.info("Call to handle token. need to figure out which
class????");
+ // p.handleToken((Element) elem, sigCrypto, decCrypto, cb,
wsDocInfo, returnResults, cfg);
+ wsDocInfo.setProcessor(p);
+ } else {
+ /*
+ * Add check for a BinarySecurityToken, add info to
WSDocInfo. If BST is
+ * found before a Signature token this would speed up (at
least a little
+ * bit) the processing of STR Transform.
+ */
+
log.info( "Unknown Element: " + elem.getLocalName() + " " +
elem.getNamespaceURI() );
+ }
+ }
+
+ return returnResults;
+ }
+}
=======================================
--- /dev/null
+++ /trunk/idm-connector-core/pom.xml Wed Jun 9 22:23:19 2010
@@ -0,0 +1,168 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="
http://maven.apache.org/POM/4.0.0"
xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>openiam</artifactId>
+ <groupId>org.openiam</groupId>
+ <version>2.1.0</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.openiam</groupId>
+ <artifactId>idm-connector-core</artifactId>
+ <packaging>jar</packaging>
+ <name>idm-connector-core</name>
+ <version>2.1.0</version>
+ <description>OpenIAM Core connectors and connector
infrastructure</description>
+ <ciManagement>
+ <system>idm</system>
+ <url>
http://build.openiam.org:8085/idm/</url>
+ <notifiers>
+ <notifier>
+ <configuration>
+ <address>
sunee...@openiam.com</address>
+ <address>
arun...@openiam.com</address>
+ </configuration>
+ </notifier>
+ </notifiers>
+ </ciManagement>
+ <build>
+ <finalName>idm-connector-core</finalName>
+ <plugins>
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.5</source>
+ <target>1.5</target>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ <dependencies>
+ <dependency>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ <version>1.2.14</version>
+ </dependency>
+ <dependency>
+ <groupId>aopalliance</groupId>
+ <artifactId>aopalliance</artifactId>
+ <version>1.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.aspectj</groupId>
+ <artifactId>aspectjrt</artifactId>
+ <version>1.6.1</version>
+ </dependency>
+ <dependency>
+ <groupId>org.aspectj</groupId>
+ <artifactId>aspectjweaver</artifactId>
+ <version>1.6.1</version>
+ </dependency>
+
+
+
+ <dependency>
+ <groupId>org.apache.cxf</groupId>
+ <artifactId>cxf-rt-core</artifactId>
+ <version>${cxf.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.cxf</groupId>
+ <artifactId>cxf-common-utilities</artifactId>
+ <version>${cxf.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.cxf</groupId>
+ <artifactId>cxf-rt-frontend-jaxws</artifactId>
+ <version>${cxf.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.cxf</groupId>
+ <artifactId>cxf-rt-transports-http</artifactId>
+ <version>${cxf.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.openiam</groupId>
+ <artifactId>idm-connector-intf</artifactId>
+ <version>2.1.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openiam</groupId>
+ <artifactId>openiam-pojo-services</artifactId>
+ <version>2.1.0</version>
+ </dependency>
+
+
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.1</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.groovy</groupId>
+ <artifactId>groovy-all</artifactId>
+ <version>1.6.5</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-core</artifactId>
+ <version>${springVersion}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-aop</artifactId>
+ <version>${springVersion}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-context</artifactId>
+ <version>${springVersion}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-context-support</artifactId>
+ <version>${springVersion}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-tx</artifactId>
+ <version>${springVersion}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-jms</artifactId>
+ <version>${springVersion}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-jdbc</artifactId>
+ <version>${springVersion}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-orm</artifactId>
+ <version>${springVersion}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-test</artifactId>
+ <version>${springVersion}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>jstl</artifactId>
+ <version>1.1.2</version>
+ </dependency>
+
+ </dependencies>
+
+ <properties>
+ <cxf.version>2.2.4</cxf.version>
+ <springVersion>2.5.6</springVersion>
+ </properties>
+
+</project>
+
=======================================
--- /dev/null
+++
/trunk/idm-connector-core/soap-ui-test/ExampleConnector-soapui-project.xml
Wed Jun 9 22:23:19 2010
@@ -0,0 +1,884 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<con:soapui-project name="ExampleConnector" resourceRoot=""
soapui-version="2.5.1"
xmlns:con="
http://eviware.com/soapui/config"><con:settings><con:setting
id="ProjectSettings@projectRoot">C:\workspace\idm\idm-connector-core\soap-ui-test</con:setting><con:setting
id="Port">8081</con:setting><con:setting id="Set endpoint for HTTP
Tunnel:">https://</con:setting><con:setting id="HTTP tunnel -
KeyStore"/><con:setting id="HTTP tunnel - Password"/><con:setting id="HTTP
tunnel - KeyPassword"/><con:setting id="HTTP tunnel -
TrustStore"/><con:setting id="HTTP tunnel - TrustStore
Password"/><con:setting id="Reuse request
state">false</con:setting><con:setting id="HTTP tunnel - Set SSL Client Key
Store path"/><con:setting id="HTTP tunnel - Set SSL Client Key Store
Password"/><con:setting id="Max
Log">100</con:setting></con:settings><con:interface
xsi:type="con:WsdlInterface" wsaVersion="NONE"
name="ExampleConnectorServiceSoapBinding" type="wsdl"
bindingName="{
http://www.openiam.org/service/connector}ExampleConnectorServiceSoapBinding"
soapVersion="1_1" anonymous="optional"
definition="
http://localhost:8080/idm-connector-core/ExampleConnectorService?wsdl"
xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"><con:settings/><con:definitionCache
type="TEXT"
rootPart="
http://localhost:8080/idm-connector-core/ExampleConnectorService?wsdl"><con:part><con:url>
http://localhost:8080/idm-connector-core/ExampleConnectorService?wsdl</con:url><con:content><![CDATA[<wsdl:definitions
name="ExampleConnectorService"
targetNamespace="
http://www.openiam.org/service/connector"
xmlns:ns1="
http://cxf.apache.org/bindings/xformat"
xmlns:soap="
http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:tns="
http://www.openiam.org/service/connector"
xmlns:wsdl="
http://schemas.xmlsoap.org/wsdl/"
xmlns:xsd="
http://www.w3.org/2001/XMLSchema">
+ <wsdl:types>
+ <xs:schema attributeFormDefault="unqualified"
elementFormDefault="qualified"
targetNamespace="urn:oasis:names:tc:SPML:2:0:password"
xmlns:ns1="urn:oasis:names:tc:SPML:2:0"
xmlns:tns="urn:oasis:names:tc:SPML:2:0:password"
xmlns:xs="
http://www.w3.org/2001/XMLSchema">
+ <xs:import namespace="urn:oasis:names:tc:SPML:2:0"/>
+ <xs:element name="expirePasswordRequest" nillable="true"
type="tns:ExpirePasswordRequestType"/>
+ <xs:element name="expirePasswordResponse" nillable="true"
type="ns1:ResponseType"/>
+ <xs:element name="resetPasswordRequest" nillable="true"
type="tns:ResetPasswordRequestType"/>
+ <xs:element name="resetPasswordResponse" nillable="true"
type="tns:ResetPasswordResponseType"/>
+ <xs:element name="setPasswordRequest" nillable="true"
type="tns:SetPasswordRequestType"/>
+ <xs:element name="setPasswordResponse" nillable="true"
type="ns1:ResponseType"/>
+ <xs:element name="validatePasswordRequest" nillable="true"
type="tns:ValidatePasswordRequestType"/>
+ <xs:element name="validatePasswordResponse" nillable="true"
type="tns:ValidatePasswordResponseType"/>
+ <xs:complexType name="ExpirePasswordRequestType">
+ <xs:complexContent>
+ <xs:extension base="ns1:RequestType">
+ <xs:sequence>
+ <xs:element name="psoID" type="ns1:PSOIdentifierType"/>
+ </xs:sequence>
+ <xs:attribute name="remainingLogins" type="xs:int"/>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="ValidatePasswordRequestType">
+ <xs:complexContent>
+ <xs:extension base="ns1:RequestType">
+ <xs:sequence>
+ <xs:element name="psoID" type="ns1:PSOIdentifierType"/>
+ <xs:element name="password" type="xs:string"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="ValidatePasswordResponseType">
+ <xs:complexContent>
+ <xs:extension base="ns1:ResponseType">
+ <xs:sequence/>
+ <xs:attribute name="valid" type="xs:boolean"/>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="SetPasswordRequestType">
+ <xs:complexContent>
+ <xs:extension base="ns1:RequestType">
+ <xs:sequence>
+ <xs:element name="psoID" type="ns1:PSOIdentifierType"/>
+ <xs:element name="password" type="xs:string"/>
+ <xs:element minOccurs="0" name="currentPassword"
type="xs:string"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="ResetPasswordRequestType">
+ <xs:complexContent>
+ <xs:extension base="ns1:RequestType">
+ <xs:sequence>
+ <xs:element name="psoID" type="ns1:PSOIdentifierType"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="ResetPasswordResponseType">
+ <xs:complexContent>
+ <xs:extension base="ns1:ResponseType">
+ <xs:sequence>
+ <xs:element minOccurs="0" name="password" type="xs:string"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:schema>
+ <xs:schema attributeFormDefault="unqualified"
elementFormDefault="qualified"
targetNamespace="urn:oasis:names:tc:SPML:2:0"
xmlns:tns="urn:oasis:names:tc:SPML:2:0"
xmlns:xs="
http://www.w3.org/2001/XMLSchema">
+ <xs:element name="addRequest" nillable="true"
type="tns:AddRequestType"/>
+ <xs:element name="addResponse" nillable="true"
type="tns:AddResponseType"/>
+ <xs:element name="deleteRequest" nillable="true"
type="tns:DeleteRequestType"/>
+ <xs:element name="deleteResponse" nillable="true"
type="tns:ResponseType"/>
+ <xs:element name="listTargetsRequest" nillable="true"
type="tns:ListTargetsRequestType"/>
+ <xs:element name="listTargetsResponse" nillable="true"
type="tns:ListTargetsResponseType"/>
+ <xs:element name="lookupRequest" nillable="true"
type="tns:LookupRequestType"/>
+ <xs:element name="lookupResponse" nillable="true"
type="tns:LookupResponseType"/>
+ <xs:element name="modifyRequest" nillable="true"
type="tns:ModifyRequestType"/>
+ <xs:element name="modifyResponse" nillable="true"
type="tns:ModifyResponseType"/>
+ <xs:element name="select" nillable="true" type="tns:SelectionType"/>
+ <xs:complexType name="ExtensibleType">
+ <xs:sequence>
+ <xs:any maxOccurs="unbounded" minOccurs="0" namespace="##other"
processContents="lax"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:complexType>
+ <xs:complexType name="AddRequestType">
+ <xs:complexContent>
+ <xs:extension base="tns:RequestType">
+ <xs:sequence>
+ <xs:element minOccurs="0" name="psoID"
type="tns:PSOIdentifierType"/>
+ <xs:element minOccurs="0" name="containerID"
type="tns:PSOIdentifierType"/>
+ <xs:element name="data" type="tns:ExtensibleType"/>
+ <xs:element maxOccurs="unbounded" minOccurs="0"
name="capabilityData" nillable="true" type="tns:CapabilityDataType"/>
+ </xs:sequence>
+ <xs:attribute name="targetID" type="xs:string"/>
+ <xs:attribute name="returnData" type="tns:ReturnDataType"/>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="RequestType">
+ <xs:complexContent>
+ <xs:extension base="tns:ExtensibleType">
+ <xs:sequence/>
+ <xs:attribute name="requestID" type="xs:ID"/>
+ <xs:attribute name="executionMode"
type="tns:ExecutionModeType"/>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="PSOIdentifierType">
+ <xs:complexContent>
+ <xs:extension base="tns:IdentifierType">
+ <xs:sequence>
+ <xs:element minOccurs="0" name="containerID"
type="tns:PSOIdentifierType"/>
+ </xs:sequence>
+ <xs:attribute name="targetID" type="xs:string"/>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="IdentifierType">
+ <xs:complexContent>
+ <xs:extension base="tns:ExtensibleType">
+ <xs:sequence/>
+ <xs:attribute name="ID" type="xs:string"/>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="CapabilityDataType">
+ <xs:complexContent>
+ <xs:extension base="tns:ExtensibleType">
+ <xs:sequence/>
+ <xs:attribute name="mustUnderstand" type="xs:boolean"/>
+ <xs:attribute name="capabilityURI" type="xs:anyURI"/>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="LookupRequestType">
+ <xs:complexContent>
+ <xs:extension base="tns:RequestType">
+ <xs:sequence>
+ <xs:element name="psoID" type="tns:PSOIdentifierType"/>
+ </xs:sequence>
+ <xs:attribute name="returnData" type="tns:ReturnDataType"/>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="ListTargetsRequestType">
+ <xs:complexContent>
+ <xs:extension base="tns:RequestType">
+ <xs:sequence/>
+ <xs:attribute name="profile" type="xs:anyURI"/>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="DeleteRequestType">
+ <xs:complexContent>
+ <xs:extension base="tns:RequestType">
+ <xs:sequence>
+ <xs:element name="psoID" type="tns:PSOIdentifierType"/>
+ </xs:sequence>
+ <xs:attribute name="recursive" type="xs:boolean"/>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="ModifyRequestType">
+ <xs:complexContent>
+ <xs:extension base="tns:RequestType">
+ <xs:sequence>
+ <xs:element name="psoID" type="tns:PSOIdentifierType"/>
+ <xs:element maxOccurs="unbounded" name="modification"
type="tns:ModificationType"/>
+ </xs:sequence>
+ <xs:attribute name="returnData" type="tns:ReturnDataType"/>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="ModificationType">
+ <xs:complexContent>
+ <xs:extension base="tns:ExtensibleType">
+ <xs:sequence>
+ <xs:element minOccurs="0" name="component"
type="tns:SelectionType"/>
+ <xs:element minOccurs="0" name="data"
type="tns:ExtensibleType"/>
+ <xs:element maxOccurs="unbounded" minOccurs="0"
name="capabilityData" nillable="true" type="tns:CapabilityDataType"/>
+ </xs:sequence>
+ <xs:attribute name="modificationMode"
type="tns:ModificationModeType"/>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="SelectionType">
+ <xs:complexContent>
+ <xs:extension base="tns:QueryClauseType">
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" minOccurs="0"
name="namespacePrefixMap" nillable="true"
type="tns:NamespacePrefixMappingType"/>
+ </xs:sequence>
+ <xs:attribute name="path" type="xs:string" use="required"/>
+ <xs:attribute name="namespaceURI" type="xs:string"
use="required"/>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="QueryClauseType">
+ <xs:complexContent>
+ <xs:extension base="tns:ExtensibleType">
+ <xs:sequence/>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="NamespacePrefixMappingType">
+ <xs:complexContent>
+ <xs:extension base="tns:ExtensibleType">
+ <xs:sequence/>
+ <xs:attribute name="prefix" type="xs:string" use="required"/>
+ <xs:attribute name="namespace" type="xs:string"
use="required"/>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="CapabilityType">
+ <xs:complexContent>
+ <xs:extension base="tns:ExtensibleType">
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" minOccurs="0"
name="appliesTo" nillable="true" type="tns:SchemaEntityRefType"/>
+ </xs:sequence>
+ <xs:attribute name="namespaceURI" type="xs:anyURI"/>
+ <xs:attribute name="location" type="xs:anyURI"/>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="SchemaEntityRefType">
+ <xs:complexContent>
+ <xs:extension base="tns:ExtensibleType">
+ <xs:sequence/>
+ <xs:attribute name="targetID" type="xs:string"/>
+ <xs:attribute name="entityName" type="xs:string"/>
+ <xs:attribute name="isContainer" type="xs:boolean"/>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="ModifyResponseType">
+ <xs:complexContent>
+ <xs:extension base="tns:ResponseType">
+ <xs:sequence>
+ <xs:element minOccurs="0" name="pso" type="tns:PSOType"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="ResponseType">
+ <xs:complexContent>
+ <xs:extension base="tns:ExtensibleType">
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" minOccurs="0"
name="errorMessage" nillable="true" type="xs:string"/>
+ </xs:sequence>
+ <xs:attribute name="status" type="tns:StatusCodeType"
use="required"/>
+ <xs:attribute name="requestID" type="xs:ID"/>
+ <xs:attribute name="error" type="tns:ErrorCode"/>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="PSOType">
+ <xs:complexContent>
+ <xs:extension base="tns:ExtensibleType">
+ <xs:sequence>
+ <xs:element name="psoID" type="tns:PSOIdentifierType"/>
+ <xs:element minOccurs="0" name="data"
type="tns:ExtensibleType"/>
+ <xs:element maxOccurs="unbounded" minOccurs="0"
name="capabilityData" nillable="true" type="tns:CapabilityDataType"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="AddResponseType">
+ <xs:complexContent>
+ <xs:extension base="tns:ResponseType">
+ <xs:sequence>
+ <xs:element minOccurs="0" name="pso" type="tns:PSOType"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="ListTargetsResponseType">
+ <xs:complexContent>
+ <xs:extension base="tns:ResponseType">
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" minOccurs="0"
name="target" nillable="true" type="tns:TargetType"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="TargetType">
+ <xs:complexContent>
+ <xs:extension base="tns:ExtensibleType">
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" name="schema"
type="tns:SchemaType"/>
+ <xs:element minOccurs="0" name="capabilities"
type="tns:CapabilitiesListType"/>
+ </xs:sequence>
+ <xs:attribute name="targetID" type="xs:string"/>
+ <xs:attribute name="profile" type="xs:anyURI"/>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="SchemaType">
+ <xs:complexContent>
+ <xs:extension base="tns:ExtensibleType">
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" minOccurs="0"
name="supportedSchemaEntity" nillable="true"
type="tns:SchemaEntityRefType"/>
+ </xs:sequence>
+ <xs:attribute name="ref" type="xs:anyURI"/>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="CapabilitiesListType">
+ <xs:complexContent>
+ <xs:extension base="tns:ExtensibleType">
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" minOccurs="0"
name="capability" nillable="true" type="tns:CapabilityType"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="LookupResponseType">
+ <xs:complexContent>
+ <xs:extension base="tns:ResponseType">
+ <xs:sequence>
+ <xs:element minOccurs="0" name="pso" type="tns:PSOType"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="skip"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="ExtensibleUser">
+ <xs:complexContent>
+ <xs:extension base="tns:ExtensibleObject">
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" minOccurs="0"
name="address" nillable="true" type="tns:ExtensibleObject"/>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="phone"
nillable="true" type="tns:ExtensibleObject"/>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="email"
nillable="true" type="tns:ExtensibleObject"/>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="group"
nillable="true" type="tns:ExtensibleGroup"/>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="role"
nillable="true" type="tns:ExtensibleRole"/>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="ExtensibleObject">
+ <xs:sequence>
+ <xs:element minOccurs="0" name="objectId" type="xs:string"/>
+ <xs:element minOccurs="0" name="name" type="xs:string"/>
+ <xs:element name="operation" type="xs:int"/>
+ <xs:element maxOccurs="unbounded" minOccurs="0"
name="attributes" nillable="true" type="tns:ExtensibleAttribute"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="ExtensibleAttribute">
+ <xs:sequence>
+ <xs:element minOccurs="0" name="name" type="xs:string"/>
+ <xs:element minOccurs="0" name="value" type="xs:string"/>
+ <xs:element name="operation" type="xs:int"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="ExtensibleGroup">
+ <xs:complexContent>
+ <xs:extension base="tns:ExtensibleObject">
+ <xs:sequence/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="ExtensibleRole">
+ <xs:complexContent>
+ <xs:extension base="tns:ExtensibleObject">
+ <xs:sequence/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:simpleType name="ReturnDataType">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="identifier"/>
+ <xs:enumeration value="data"/>
+ <xs:enumeration value="everything"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="ExecutionModeType">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="synchronous"/>
+ <xs:enumeration value="asynchronous"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="ModificationModeType">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="add"/>
+ <xs:enumeration value="replace"/>
+ <xs:enumeration value="delete"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="StatusCodeType">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="success"/>
+ <xs:enumeration value="failure"/>
+ <xs:enumeration value="pending"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="ErrorCode">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="malformedRequest"/>
+ <xs:enumeration value="unsupportedOperation"/>
+ <xs:enumeration value="unsupportedIdentifierType"/>
+ <xs:enumeration value="noSuchIdentifier"/>
+ <xs:enumeration value="customError"/>
+ <xs:enumeration value="unsupportedExecutionMode"/>
+ <xs:enumeration value="invalidContainment"/>
+ <xs:enumeration value="noSuchRequest"/>
+ <xs:enumeration value="unsupportedSelectionType"/>
+ <xs:enumeration value="resultSetToLarge"/>
+ <xs:enumeration value="unsupportedProfile"/>
+ <xs:enumeration value="invalidIdentifier"/>
+ <xs:enumeration value="alreadyExists"/>
+ <xs:enumeration value="containerNotEmpty"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:schema>
+ <xsd:schema attributeFormDefault="unqualified"
elementFormDefault="unqualified"
targetNamespace="
http://www.openiam.org/service/connector"
xmlns:ns0="urn:oasis:names:tc:SPML:2:0"
xmlns:ns1="urn:oasis:names:tc:SPML:2:0:password">
+ <xsd:import namespace="urn:oasis:names:tc:SPML:2:0"/>
+ <xsd:import namespace="urn:oasis:names:tc:SPML:2:0:password"/>
+ <xsd:element name="add" type="tns:add"/>
+ <xsd:complexType name="add">
+ <xsd:sequence>
+ <xsd:element minOccurs="0" name="arg0"
type="ns0:AddRequestType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="addResponse" type="tns:addResponse"/>
+ <xsd:complexType name="addResponse">
+ <xsd:sequence>
+ <xsd:element minOccurs="0" name="return"
type="ns0:AddResponseType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="expirePassword" type="tns:expirePassword"/>
+ <xsd:complexType name="expirePassword">
+ <xsd:sequence>
+ <xsd:element minOccurs="0" name="arg0"
type="ns1:ExpirePasswordRequestType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="expirePasswordResponse"
type="tns:expirePasswordResponse"/>
+ <xsd:complexType name="expirePasswordResponse">
+ <xsd:sequence>
+ <xsd:element minOccurs="0" name="return"
type="ns0:ResponseType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="lookup" type="tns:lookup"/>
+ <xsd:complexType name="lookup">
+ <xsd:sequence>
+ <xsd:element minOccurs="0" name="arg0"
type="ns0:LookupRequestType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="lookupResponse" type="tns:lookupResponse"/>
+ <xsd:complexType name="lookupResponse">
+ <xsd:sequence>
+ <xsd:element minOccurs="0" name="return"
type="ns0:LookupResponseType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="delete" type="tns:delete"/>
+ <xsd:complexType name="delete">
+ <xsd:sequence>
+ <xsd:element minOccurs="0" name="arg0"
type="ns0:DeleteRequestType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="deleteResponse" type="tns:deleteResponse"/>
+ <xsd:complexType name="deleteResponse">
+ <xsd:sequence>
+ <xsd:element minOccurs="0" name="return"
type="ns0:ResponseType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="validatePassword" type="tns:validatePassword"/>
+ <xsd:complexType name="validatePassword">
+ <xsd:sequence>
+ <xsd:element minOccurs="0" name="arg0"
type="ns1:ValidatePasswordRequestType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="validatePasswordResponse"
type="tns:validatePasswordResponse"/>
+ <xsd:complexType name="validatePasswordResponse">
+ <xsd:sequence>
+ <xsd:element minOccurs="0" name="return"
type="ns1:ValidatePasswordResponseType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="modify" type="tns:modify"/>
+ <xsd:complexType name="modify">
+ <xsd:sequence>
+ <xsd:element minOccurs="0" name="arg0"
type="ns0:ModifyRequestType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="modifyResponse" type="tns:modifyResponse"/>
+ <xsd:complexType name="modifyResponse">
+ <xsd:sequence>
+ <xsd:element minOccurs="0" name="return"
type="ns0:ModifyResponseType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="setPassword" type="tns:setPassword"/>
+ <xsd:complexType name="setPassword">
+ <xsd:sequence>
+ <xsd:element minOccurs="0" name="arg0"
type="ns1:SetPasswordRequestType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="setPasswordResponse"
type="tns:setPasswordResponse"/>
+ <xsd:complexType name="setPasswordResponse">
+ <xsd:sequence>
+ <xsd:element minOccurs="0" name="return"
type="ns0:ResponseType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="resetPassword" type="tns:resetPassword"/>
+ <xsd:complexType name="resetPassword">
+ <xsd:sequence>
+ <xsd:element minOccurs="0" name="arg0"
type="ns1:ResetPasswordRequestType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:element name="resetPasswordResponse"
type="tns:resetPasswordResponse"/>
+ <xsd:complexType name="resetPasswordResponse">
+ <xsd:sequence>
+ <xsd:element minOccurs="0" name="return"
type="ns1:ResetPasswordResponseType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:schema>
+ </wsdl:types>
+ <wsdl:message name="resetPasswordResponse">
+ <wsdl:part element="tns:resetPasswordResponse"
name="parameters"></wsdl:part>
+ </wsdl:message>
+ <wsdl:message name="delete">
+ <wsdl:part element="tns:delete" name="parameters"></wsdl:part>
+ </wsdl:message>
+ <wsdl:message name="modifyResponse">
+ <wsdl:part element="tns:modifyResponse" name="parameters"></wsdl:part>
+ </wsdl:message>
+ <wsdl:message name="setPassword">
+ <wsdl:part element="tns:setPassword" name="parameters"></wsdl:part>
+ </wsdl:message>
+ <wsdl:message name="deleteResponse">
+ <wsdl:part element="tns:deleteResponse" name="parameters"></wsdl:part>
+ </wsdl:message>
+ <wsdl:message name="setPasswordResponse">
+ <wsdl:part element="tns:setPasswordResponse"
name="parameters"></wsdl:part>
+ </wsdl:message>
+ <wsdl:message name="validatePasswordResponse">
+ <wsdl:part element="tns:validatePasswordResponse"
name="parameters"></wsdl:part>
+ </wsdl:message>
+ <wsdl:message name="lookupResponse">
+ <wsdl:part element="tns:lookupResponse" name="parameters"></wsdl:part>
+ </wsdl:message>
+ <wsdl:message name="modify">
+ <wsdl:part element="tns:modify" name="parameters"></wsdl:part>
+ </wsdl:message>
+ <wsdl:message name="add">
+ <wsdl:part element="tns:add" name="parameters"></wsdl:part>
+ </wsdl:message>
+ <wsdl:message name="expirePasswordResponse">
+ <wsdl:part element="tns:expirePasswordResponse"
name="parameters"></wsdl:part>
+ </wsdl:message>
+ <wsdl:message name="lookup">
+ <wsdl:part element="tns:lookup" name="parameters"></wsdl:part>
+ </wsdl:message>
+ <wsdl:message name="addResponse">
+ <wsdl:part element="tns:addResponse" name="parameters"></wsdl:part>
+ </wsdl:message>
+ <wsdl:message name="expirePassword">
+ <wsdl:part element="tns:expirePassword" name="parameters"></wsdl:part>
+ </wsdl:message>
+ <wsdl:message name="validatePassword">
+ <wsdl:part element="tns:validatePassword"
name="parameters"></wsdl:part>
+ </wsdl:message>
+ <wsdl:message name="resetPassword">
+ <wsdl:part element="tns:resetPassword" name="parameters"></wsdl:part>
+ </wsdl:message>
+ <wsdl:portType name="ConnectorService">
+ <wsdl:operation name="add">
+ <wsdl:input message="tns:add" name="add"></wsdl:input>
+ <wsdl:output message="tns:addResponse"
name="addResponse"></wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="expirePassword">
+ <wsdl:input message="tns:expirePassword"
name="expirePassword"></wsdl:input>
+ <wsdl:output message="tns:expirePasswordResponse"
name="expirePasswordResponse"></wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="lookup">
+ <wsdl:input message="tns:lookup" name="lookup"></wsdl:input>
+ <wsdl:output message="tns:lookupResponse"
name="lookupResponse"></wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="delete">
+ <wsdl:input message="tns:delete" name="delete"></wsdl:input>
+ <wsdl:output message="tns:deleteResponse"
name="deleteResponse"></wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="validatePassword">
+ <wsdl:input message="tns:validatePassword"
name="validatePassword"></wsdl:input>
+ <wsdl:output message="tns:validatePasswordResponse"
name="validatePasswordResponse"></wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="modify">
+ <wsdl:input message="tns:modify" name="modify"></wsdl:input>
+ <wsdl:output message="tns:modifyResponse"
name="modifyResponse"></wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="setPassword">
+ <wsdl:input message="tns:setPassword"
name="setPassword"></wsdl:input>
+ <wsdl:output message="tns:setPasswordResponse"
name="setPasswordResponse"></wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="resetPassword">
+ <wsdl:input message="tns:resetPassword"
name="resetPassword"></wsdl:input>
+ <wsdl:output message="tns:resetPasswordResponse"
name="resetPasswordResponse"></wsdl:output>
+ </wsdl:operation>
+ </wsdl:portType>
+ <wsdl:binding name="ExampleConnectorServiceSoapBinding"
type="tns:ConnectorService">
+ <soap:binding style="document"
transport="
http://schemas.xmlsoap.org/soap/http"/>
+ <wsdl:operation name="add">
+ <soap:operation soapAction="" style="document"/>
+ <wsdl:input name="add">
+ <soap:body use="literal"/>
+ </wsdl:input>
+ <wsdl:output name="addResponse">
+ <soap:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="expirePassword">
+ <soap:operation soapAction="" style="document"/>
+ <wsdl:input name="expirePassword">
+ <soap:body use="literal"/>
+ </wsdl:input>
+ <wsdl:output name="expirePasswordResponse">
+ <soap:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="lookup">
+ <soap:operation soapAction="" style="document"/>
+ <wsdl:input name="lookup">
+ <soap:body use="literal"/>
+ </wsdl:input>
+ <wsdl:output name="lookupResponse">
+ <soap:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="delete">
+ <soap:operation soapAction="" style="document"/>
+ <wsdl:input name="delete">
+ <soap:body use="literal"/>
+ </wsdl:input>
+ <wsdl:output name="deleteResponse">
+ <soap:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="validatePassword">
+ <soap:operation soapAction="" style="document"/>
+ <wsdl:input name="validatePassword">
+ <soap:body use="literal"/>
+ </wsdl:input>
+ <wsdl:output name="validatePasswordResponse">
+ <soap:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="modify">
+ <soap:operation soapAction="" style="document"/>
+ <wsdl:input name="modify">
+ <soap:body use="literal"/>
+ </wsdl:input>
+ <wsdl:output name="modifyResponse">
+ <soap:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="setPassword">
+ <soap:operation soapAction="" style="document"/>
+ <wsdl:input name="setPassword">
+ <soap:body use="literal"/>
+ </wsdl:input>
+ <wsdl:output name="setPasswordResponse">
+ <soap:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="resetPassword">
+ <soap:operation soapAction="" style="document"/>
+ <wsdl:input name="resetPassword">
+ <soap:body use="literal"/>
+ </wsdl:input>
+ <wsdl:output name="resetPasswordResponse">
+ <soap:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+ </wsdl:binding>
+ <wsdl:service name="ExampleConnectorService">
+ <wsdl:port binding="tns:ExampleConnectorServiceSoapBinding"
name="ExampleConnectorServicePort">
+ <soap:address
location="
http://localhost:8080/idm-connector-core/ExampleConnectorService"/>
+ </wsdl:port>
+ </wsdl:service>
+</wsdl:definitions>]]></con:content><con:type>
http://schemas.xmlsoap.org/wsdl/</con:type></con:part></con:definitionCache><con:endpoints><con:endpoint>
http://localhost:8080/idm-connector-core/ExampleConnectorService</con:endpoint></con:endpoints><con:operation
isOneWay="false"
action="" name="add" bindingOperationName="add"
type="Request-Response" outputName="addResponse" inputName="add"
receivesAttachments="false" sendsAttachments="false"
anonymous="optional"><con:settings/><con:call name="Request
1"><con:settings/><con:encoding>UTF-8</con:encoding><con:endpoint>
http://localhost:8080/idm-connector-core/ExampleConnectorService</con:endpoint><con:request><![CDATA[<soapenv:Envelope
xmlns:soapenv="
http://schemas.xmlsoap.org/soap/envelope/"
xmlns:con="
http://www.openiam.org/service/connector"
xmlns:urn="urn:oasis:names:tc:SPML:2:0">
+ <soapenv:Header/>
+ <soapenv:Body>
+ <con:add>
+ <!--Optional:-->
+ <arg0 requestID="?" executionMode="?" targetID="?" returnData="?">
+ <!--You may enter ANY elements at this point-->
+ <!--Optional:-->
+ <urn:psoID ID="?" targetID="?">
+ <!--You may enter ANY elements at this point-->
+ <!--Optional:-->
+ <urn:containerID/>
+ </urn:psoID>
+ <!--Optional:-->
+ <urn:containerID ID="?" targetID="?">
+ <!--You may enter ANY elements at this point-->
+ <!--Optional:-->
+ <urn:containerID/>
+ </urn:containerID>
+ <urn:data>
+ <!--You may enter ANY elements at this point-->
+ </urn:data>
+ <!--Zero or more repetitions:-->
+ <urn:capabilityData mustUnderstand="?" capabilityURI="?">
+ <!--You may enter ANY elements at this point-->
+ </urn:capabilityData>
+ </arg0>
+ </con:add>
+ </soapenv:Body>
+</soapenv:Envelope>]]></con:request><con:wsaConfig mustUnderstand="NONE"
version="200508"
action="
http://www.openiam.org/service/connector/ConnectorService/add"/></con:call></con:operation><con:operation
isOneWay="false" action="" name="delete" bindingOperationName="delete"
type="Request-Response" outputName="deleteResponse" inputName="delete"
receivesAttachments="false" sendsAttachments="false"
anonymous="optional"><con:settings/><con:call name="Request
1"><con:settings/><con:encoding>UTF-8</con:encoding><con:endpoint>
http://localhost:8080/idm-connector-core/ExampleConnectorService</con:endpoint><con:request><![CDATA[<soapenv:Envelope
xmlns:soapenv="
http://schemas.xmlsoap.org/soap/envelope/"
xmlns:con="
http://www.openiam.org/service/connector"
xmlns:urn="urn:oasis:names:tc:SPML:2:0">
+ <soapenv:Header/>
+ <soapenv:Body>
+ <con:delete>
+ <!--Optional:-->
+ <arg0 requestID="?" executionMode="?" recursive="?">
+ <!--You may enter ANY elements at this point-->
+ <urn:psoID ID="?" targetID="?">
+ <!--You may enter ANY elements at this point-->
+ <!--Optional:-->
+ <urn:containerID/>
+ </urn:psoID>
+ </arg0>
+ </con:delete>
+ </soapenv:Body>
+</soapenv:Envelope>]]></con:request><con:wsaConfig mustUnderstand="NONE"
version="200508"
action="
http://www.openiam.org/service/connector/ConnectorService/delete"/></con:call></con:operation><con:operation
isOneWay="false" action="" name="expirePassword"
bindingOperationName="expirePassword" type="Request-Response"
outputName="expirePasswordResponse" inputName="expirePassword"
receivesAttachments="false" sendsAttachments="false"
anonymous="optional"><con:settings/><con:call name="Request
1"><con:settings/><con:encoding>UTF-8</con:encoding><con:endpoint>
http://localhost:8080/idm-connector-core/ExampleConnectorService</con:endpoint><con:request><![CDATA[<soapenv:Envelope
xmlns:soapenv="
http://schemas.xmlsoap.org/soap/envelope/"
xmlns:con="
http://www.openiam.org/service/connector"
xmlns:urn="urn:oasis:names:tc:SPML:2:0:password"
xmlns:urn1="urn:oasis:names:tc:SPML:2:0">
+ <soapenv:Header/>
+ <soapenv:Body>
+ <con:expirePassword>
+ <!--Optional:-->
+ <arg0 requestID="?" executionMode="?" remainingLogins="?">
+ <!--You may enter ANY elements at this point-->
+ <urn:psoID ID="?" targetID="?">
+ <!--You may enter ANY elements at this point-->
+ <!--Optional:-->
+ <urn1:containerID/>
+ </urn:psoID>
+ </arg0>
+ </con:expirePassword>
+ </soapenv:Body>
+</soapenv:Envelope>]]></con:request><con:wsaConfig mustUnderstand="NONE"
version="200508"
action="
http://www.openiam.org/service/connector/ConnectorService/expirePassword"/></con:call></con:operation><con:operation
isOneWay="false" action="" name="lookup" bindingOperationName="lookup"
type="Request-Response" outputName="lookupResponse" inputName="lookup"
receivesAttachments="false" sendsAttachments="false"
anonymous="optional"><con:settings/><con:call name="Request
1"><con:settings/><con:encoding>UTF-8</con:encoding><con:endpoint>
http://localhost:8080/idm-connector-core/ExampleConnectorService</con:endpoint><con:request><![CDATA[<soapenv:Envelope
xmlns:soapenv="
http://schemas.xmlsoap.org/soap/envelope/"
xmlns:con="
http://www.openiam.org/service/connector"
xmlns:urn="urn:oasis:names:tc:SPML:2:0">
+ <soapenv:Header/>
+ <soapenv:Body>
+ <con:lookup>
+ <!--Optional:-->
+ <arg0 requestID="?" executionMode="?" returnData="?">
+ <!--You may enter ANY elements at this point-->
+ <urn:psoID ID="?" targetID="?">
+ <!--You may enter ANY elements at this point-->
+ <!--Optional:-->
+ <urn:containerID/>
+ </urn:psoID>
+ </arg0>
+ </con:lookup>
+ </soapenv:Body>
+</soapenv:Envelope>]]></con:request><con:wsaConfig mustUnderstand="NONE"
version="200508"
action="
http://www.openiam.org/service/connector/ConnectorService/lookup"/></con:call></con:operation><con:operation
isOneWay="false" action="" name="modify" bindingOperationName="modify"
type="Request-Response" outputName="modifyResponse" inputName="modify"
receivesAttachments="false" sendsAttachments="false"
anonymous="optional"><con:settings/><con:call name="Request
1"><con:settings/><con:encoding>UTF-8</con:encoding><con:endpoint>
http://localhost:8080/idm-connector-core/ExampleConnectorService</con:endpoint><con:request><![CDATA[<soapenv:Envelope
xmlns:soapenv="
http://schemas.xmlsoap.org/soap/envelope/"
xmlns:con="
http://www.openiam.org/service/connector"
xmlns:urn="urn:oasis:names:tc:SPML:2:0">
+ <soapenv:Header/>
+ <soapenv:Body>
+ <con:modify>
+ <!--Optional:-->
+ <arg0 requestID="?" executionMode="?" returnData="?">
+ <!--You may enter ANY elements at this point-->
+ <urn:psoID ID="?" targetID="?">
+ <!--You may enter ANY elements at this point-->
+ <!--Optional:-->
+ <urn:containerID/>
+ </urn:psoID>
+ <!--1 or more repetitions:-->
+ <urn:modification modificationMode="?">
+ <!--You may enter ANY elements at this point-->
+ <!--Optional:-->
+ <urn:component path="?" namespaceURI="?">
+ <!--You may enter ANY elements at this point-->
+ <!--Zero or more repetitions:-->
+ <urn:namespacePrefixMap prefix="?" namespace="?">
+ <!--You may enter ANY elements at this point-->
+ </urn:namespacePrefixMap>
+ </urn:component>
+ <!--Optional:-->
+ <urn:data>
+ <!--You may enter ANY elements at this point-->
+ </urn:data>
+ <!--Zero or more repetitions:-->
+ <urn:capabilityData mustUnderstand="?" capabilityURI="?">
+ <!--You may enter ANY elements at this point-->
+ </urn:capabilityData>
+ </urn:modification>
+ </arg0>
+ </con:modify>
+ </soapenv:Body>
+</soapenv:Envelope>]]></con:request><con:wsaConfig mustUnderstand="NONE"
version="200508"
action="
http://www.openiam.org/service/connector/ConnectorService/modify"/></con:call></con:operation><con:operation
isOneWay="false" action="" name="resetPassword"
bindingOperationName="resetPassword" type="Request-Response"
outputName="resetPasswordResponse" inputName="resetPassword"
receivesAttachments="false" sendsAttachments="false"
anonymous="optional"><con:settings/><con:call name="Request
1"><con:settings/><con:encoding>UTF-8</con:encoding><con:endpoint>
http://localhost:8080/idm-connector-core/ExampleConnectorService</con:endpoint><con:request><![CDATA[<soapenv:Envelope
xmlns:soapenv="
http://schemas.xmlsoap.org/soap/envelope/"
xmlns:con="
http://www.openiam.org/service/connector"
xmlns:urn="urn:oasis:names:tc:SPML:2:0:password"
xmlns:urn1="urn:oasis:names:tc:SPML:2:0">
+ <soapenv:Header/>
+ <soapenv:Body>
+ <con:resetPassword>
+ <!--Optional:-->
+ <arg0 requestID="?" executionMode="?">
+ <!--You may enter ANY elements at this point-->
+ <urn:psoID ID="?" targetID="?">
+ <!--You may enter ANY elements at this point-->
+ <!--Optional:-->
+ <urn1:containerID/>
+ </urn:psoID>
+ </arg0>
+ </con:resetPassword>
+ </soapenv:Body>
+</soapenv:Envelope>]]></con:request><con:wsaConfig mustUnderstand="NONE"
version="200508"
action="
http://www.openiam.org/service/connector/ConnectorService/resetPassword"/></con:call></con:operation><con:operation
isOneWay="false" action="" name="setPassword"
bindingOperationName="setPassword" type="Request-Response"
outputName="setPasswordResponse" inputName="setPassword"
receivesAttachments="false" sendsAttachments="false"
anonymous="optional"><con:settings/><con:call name="Request
1"><con:settings/><con:encoding>UTF-8</con:encoding><con:endpoint>
http://localhost:8080/idm-connector-core/ExampleConnectorService</con:endpoint><con:request><![CDATA[<soapenv:Envelope
xmlns:soapenv="
http://schemas.xmlsoap.org/soap/envelope/"
xmlns:con="
http://www.openiam.org/service/connector"
xmlns:urn="urn:oasis:names:tc:SPML:2:0:password"
xmlns:urn1="urn:oasis:names:tc:SPML:2:0">
+ <soapenv:Header/>
+ <soapenv:Body>
+ <con:setPassword>
+ <!--Optional:-->
+ <arg0 requestID="?" executionMode="?">
+ <!--You may enter ANY elements at this point-->
+ <urn:psoID ID="?" targetID="?">
+ <!--You may enter ANY elements at this point-->
+ <!--Optional:-->
+ <urn1:containerID/>
+ </urn:psoID>
+ <urn:password>?</urn:password>
+ <!--Optional:-->
+ <urn:currentPassword>?</urn:currentPassword>
+ </arg0>
+ </con:setPassword>
+ </soapenv:Body>
+</soapenv:Envelope>]]></con:request><con:wsaConfig mustUnderstand="NONE"
version="200508"
action="
http://www.openiam.org/service/connector/ConnectorService/setPassword"/></con:call></con:operation><con:operation
isOneWay="false" action="" name="validatePassword"
bindingOperationName="validatePassword" type="Request-Response"
outputName="validatePasswordResponse" inputName="validatePassword"
receivesAttachments="false" sendsAttachments="false"
anonymous="optional"><con:settings/><con:call name="Request
1"><con:settings/><con:encoding>UTF-8</con:encoding><con:endpoint>
http://localhost:8080/idm-connector-core/ExampleConnectorService</con:endpoint><con:request><![CDATA[<soapenv:Envelope
xmlns:soapenv="
http://schemas.xmlsoap.org/soap/envelope/"
xmlns:con="
http://www.openiam.org/service/connector"
xmlns:urn="urn:oasis:names:tc:SPML:2:0:password"
xmlns:urn1="urn:oasis:names:tc:SPML:2:0">
+ <soapenv:Header/>
+ <soapenv:Body>
+ <con:validatePassword>
+ <!--Optional:-->
+ <arg0 requestID="?" executionMode="?">
+ <!--You may enter ANY elements at this point-->
+ <urn:psoID ID="?" targetID="?">
+ <!--You may enter ANY elements at this point-->
+ <!--Optional:-->
+ <urn1:containerID/>
+ </urn:psoID>
+ <urn:password>?</urn:password>
+ </arg0>
+ </con:validatePassword>
+ </soapenv:Body>
+</soapenv:Envelope>]]></con:request><con:wsaConfig mustUnderstand="NONE"
version="200508"
action="
http://www.openiam.org/service/connector/ConnectorService/validatePassword"/></con:call></con:operation></con:interface><con:testSuite
name="ExampleConnectorServiceSoapBinding
TestSuite"><con:settings/><con:runType>SEQUENTIAL</con:runType><con:testCase
failOnError="true" failTestCaseOnErrors="true" keepSession="false"
maxResults="0" name="add TestCase"
searchProperties="true"><con:settings/><con:testStep type="request"
name="add"><con:settings/><con:config xsi:type="con:RequestStep"
xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"><con:interface>ExampleConnectorServiceSoapBinding</con:interface><con:operation>add</con:operation><con:request
name="add"><con:settings/><con:encoding>UTF-8</con:encoding><con:endpoint>
http://localhost:8080/idm-connector-core/ExampleConnectorService</con:endpoint><con:request><![CDATA[
+<soap:Envelope
xmlns:soap="
http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><ns1:add
xmlns:ns1="
http://www.openiam.org/service/connector"><arg0
xmlns:ns2="urn:oasis:names:tc:SPML:2:0:password"
xmlns:ns3="urn:oasis:names:tc:SPML:2:0" targetID="100"
requestID="1249651535774"><ns3:psoID targetID="target"
ID="tlucich"/><ns3:data><ns3:extensibleUser><ns3:name>My
user</ns3:name><ns3:operation>0</ns3:operation><ns3:attributes><ns3:name>cn</ns3:name><ns3:value>Tony
Tiger</ns3:value><ns3:operation>1</ns3:operation></ns3:attributes><ns3:attributes><ns3:name>givenname</ns3:name><ns3:value>Tony</ns3:value><ns3:operation>1</ns3:operation></ns3:attributes><ns3:attributes><ns3:name>sn</ns3:name><ns3:value>Tiger</ns3:value><ns3:operation>1</ns3:operation></ns3:attributes><ns3:attributes><ns3:name>description</ns3:name><ns3:value>Test
User</ns3:value><ns3:operation>1</ns3:operation></ns3:attributes><ns3:attributes><ns3:name>mail</ns3:name><ns3:value>
to...@openiam.com</ns3:value><ns3:operation>1</ns3:operation></ns3:attributes></ns3:extensibleUser></ns3:data></arg0></ns1:add></soap:Body></soap:Envelope>]]></con:request><con:wsaConfig
action="
http://www.openiam.org/service/connector/ConnectorService/add"
mustUnderstand="NONE"
version="200508"/></con:request></con:config></con:testStep><con:properties/></con:testCase><con:testCase
failOnError="true" failTestCaseOnErrors="true" keepSession="false"
maxResults="0" name="delete TestCase"
searchProperties="true"><con:settings/><con:testStep type="request"
name="delete"><con:settings/><con:config xsi:type="con:RequestStep"
xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"><con:interface>ExampleConnectorServiceSoapBinding</con:interface><con:operation>delete</con:operation><con:request
name="delete"><con:settings/><con:encoding>UTF-8</con:encoding><con:endpoint>
http://localhost:8080/idm-connector-core/ExampleConnectorService</con:endpoint><con:request><![CDATA[<soapenv:Envelope
xmlns:soapenv="
http://schemas.xmlsoap.org/soap/envelope/"
xmlns:con="
http://www.openiam.org/service/connector">
+ <soapenv:Header/>
+ <soapenv:Body>
+ <con:delete><arg0 requestID="10023343"
executionMode="synchronous"><urn:psoID ID="tlucich" targetID="100"
xmlns:urn="urn:oasis:names:tc:SPML:2:0"/></arg0></con:delete>
+ </soapenv:Body>
+</soapenv:Envelope>]]></con:request><con:wsaConfig
action="
http://www.openiam.org/service/connector/ConnectorService/delete"
mustUnderstand="NONE"
version="200508"/></con:request></con:config></con:testStep><con:properties/></con:testCase><con:testCase
failOnError="true" failTestCaseOnErrors="true" keepSession="false"
maxResults="0" name="modify TestCase"
searchProperties="true"><con:settings/><con:testStep type="request"
name="modify"><con:settings/><con:config xsi:type="con:RequestStep"
xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"><con:interface>ExampleConnectorServiceSoapBinding</con:interface><con:operation>modify</con:operation><con:request
name="modify"><con:settings/><con:encoding>UTF-8</con:encoding><con:endpoint>
http://localhost:8080/idm-connector-core/ExampleConnectorService</con:endpoint><con:request><![CDATA[<soapenv:Envelope
xmlns:soapenv="
http://schemas.xmlsoap.org/soap/envelope/"
xmlns:con="
http://www.openiam.org/service/connector">
+ <soapenv:Header/>
+ <soapenv:Body>
+ <con:modify/>
+ </soapenv:Body>
+</soapenv:Envelope>]]></con:request><con:wsaConfig
action="
http://www.openiam.org/service/connector/ConnectorService/modify"/></con:request></con:config></con:testStep><con:properties/></con:testCase><con:testCase
failOnError="true" failTestCaseOnErrors="true" keepSession="false"
maxResults="0" name="setPassword TestCase"
searchProperties="true"><con:settings/><con:testStep type="request"
name="setPassword"><con:settings/><con:config xsi:type="con:RequestStep"
xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"><con:interface>ExampleConnectorServiceSoapBinding</con:interface><con:operation>setPassword</con:operation><con:request
name="setPassword"><con:settings/><con:encoding>UTF-8</con:encoding><con:endpoint>
http://localhost:8080/idm-connector-core/ExampleConnectorService</con:endpoint><con:request><![CDATA[<soapenv:Envelope
xmlns:soapenv="
http://schemas.xmlsoap.org/soap/envelope/"
xmlns:con="
http://www.openiam.org/service/connector">
+ <soapenv:Header/>
+ <soapenv:Body>
+ <con:setPassword><arg0 requestID="1234566"
executionMode="synchronous"><urn:password
xmlns:urn="urn:oasis:names:tc:SPML:2:0:password">mypassword01</urn:password><urn:psoID
ID="tlucich" targetID="100"
xmlns:urn="urn:oasis:names:tc:SPML:2:0:password"/></arg0></con:setPassword>
+ </soapenv:Body>
+</soapenv:Envelope>]]></con:request><con:wsaConfig
action="
http://www.openiam.org/service/connector/ConnectorService/setPassword"
mustUnderstand="NONE"
version="200508"/></con:request></con:config></con:testStep><con:properties/></con:testCase><con:properties/></con:testSuite><con:requirements/><con:properties/><con:wssContainer/></con:soapui-project>
=======================================
--- /dev/null
+++
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/recon/service/ReconResultDetailDAOImpl.java
Wed Jun 9 22:23:19 2010
@@ -0,0 +1,96 @@
+package org.openiam.idm.srvc.recon.service;
+
+// Generated May 29, 2010 8:20:09 PM by Hibernate Tools
3.2.2.GA
+
+import java.util.List;
+import javax.naming.InitialContext;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.hibernate.SessionFactory;
+import org.openiam.idm.srvc.recon.dto.ReconResultDetail;
+
+
+/**
+ * Home object for domain model class ReconResultDetail.
+ * @see org.openiam.idm.srvc.pswd.service.ReconResultDetail
+ * @author Hibernate Tools
+ */
+public class ReconResultDetailDAOImpl implements ReconResultDetailDAO {
+
+ private static final Log log = LogFactory
+ .getLog(ReconResultDetailDAO.class);
+
+ private SessionFactory sessionFactory;
+
+
+ public void setSessionFactory(SessionFactory session) {
+ this.sessionFactory = session;
+ }
+
+ protected SessionFactory getSessionFactory() {
+ try {
+ return (SessionFactory) new InitialContext()
+ .lookup("SessionFactory");
+ } catch (Exception e) {
+ log.error("Could not locate SessionFactory in JNDI", e);
+ throw new IllegalStateException(
+ "Could not locate SessionFactory in JNDI");
+ }
+ }
+
+ public void add(ReconResultDetail transientInstance) {
+ log.debug("persisting ReconResultDetail instance");
+ try {
+ sessionFactory.getCurrentSession().persist(transientInstance);
+ log.debug("persist successful");
+ } catch (RuntimeException re) {
+ log.error("persist failed", re);
+ throw re;
+ }
+ }
+
+
+ public void remove(ReconResultDetail persistentInstance) {
+ log.debug("deleting ReconResultDetail instance");
+ try {
+ sessionFactory.getCurrentSession().delete(persistentInstance);
+ log.debug("delete successful");
+ } catch (RuntimeException re) {
+ log.error("delete failed", re);
+ throw re;
+ }
+ }
+
+ public ReconResultDetail update(ReconResultDetail detachedInstance) {
+ log.debug("merging ReconResultDetail instance");
+ try {
+ ReconResultDetail result = (ReconResultDetail) sessionFactory
+ .getCurrentSession().merge(detachedInstance);
+ log.debug("merge successful");
+ return result;
+ } catch (RuntimeException re) {
+ log.error("merge failed", re);
+ throw re;
+ }
+ }
+
+ public ReconResultDetail findById(java.lang.String id) {
+ log.debug("getting ReconResultDetail instance with id: " + id);
+ try {
+ ReconResultDetail instance = (ReconResultDetail) sessionFactory
+ .getCurrentSession()
+ .get("org.openiam.idm.srvc.pswd.service.ReconResultDetail",
+ id);
+ if (instance == null) {
+ log.debug("get successful, no instance found");
+ } else {
+ log.debug("get successful, instance found");
+ }
+ return instance;
+ } catch (RuntimeException re) {
+ log.error("get failed", re);
+ throw re;
+ }
+ }
+
+}
=======================================
--- /dev/null
+++
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/recon/service/ReconciliationConfigDAOImpl.java
Wed Jun 9 22:23:19 2010
@@ -0,0 +1,101 @@
+package org.openiam.idm.srvc.recon.service;
+
+// Generated May 29, 2010 8:20:09 PM by Hibernate Tools
3.2.2.GA
+
+import java.util.List;
+import javax.naming.InitialContext;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.hibernate.LockMode;
+import org.hibernate.SessionFactory;
+import org.openiam.idm.srvc.recon.dto.ReconciliationConfig;
+
+import static org.hibernate.criterion.Example.create;
+
+/**
+ * Home object for domain model class ReconiliationConfig.
+ * @see org.openiam.idm.srvc.pswd.service.ReconiliationConfig
+ * @author Hibernate Tools
+ */
+public class ReconciliationConfigDAOImpl implements
ReconciliationConfigDAO {
+
+ private static final Log log = LogFactory
+ .getLog(ReconciliationConfigDAO.class);
+
+ private SessionFactory sessionFactory;
+
+
+ public void setSessionFactory(SessionFactory session) {
+ this.sessionFactory = session;
+ }
+
+ protected SessionFactory getSessionFactory() {
+ try {
+ return (SessionFactory) new InitialContext()
+ .lookup("SessionFactory");
+ } catch (Exception e) {
+ log.error("Could not locate SessionFactory in JNDI", e);
+ throw new IllegalStateException(
+ "Could not locate SessionFactory in JNDI");
+ }
+ }
+
+
+ public void add(ReconciliationConfig transientInstance) {
+ log.debug("persisting ReconiliationConfig instance");
+ try {
+ sessionFactory.getCurrentSession().persist(transientInstance);
+ log.debug("persist successful");
+ } catch (RuntimeException re) {
+ log.error("persist failed", re);
+ throw re;
+ }
+ }
+
+
+ public void remove(ReconciliationConfig persistentInstance) {
+ log.debug("deleting ReconiliationConfig instance");
+ try {
+ sessionFactory.getCurrentSession().delete(persistentInstance);
+ log.debug("delete successful");
+ } catch (RuntimeException re) {
+ log.error("delete failed", re);
+ throw re;
+ }
+ }
+
+ public ReconciliationConfig update(ReconciliationConfig detachedInstance)
{
+ log.debug("merging ReconiliationConfig instance");
+ try {
+ ReconciliationConfig result = (ReconciliationConfig) sessionFactory
+ .getCurrentSession().merge(detachedInstance);
+ log.debug("merge successful");
+ return result;
+ } catch (RuntimeException re) {
+ log.error("merge failed", re);
+ throw re;
+ }
+ }
+
+ public ReconciliationConfig findById(java.lang.String id) {
+ log.debug("getting ReconiliationConfig instance with id: " + id);
+ try {
+ ReconciliationConfig instance = (ReconciliationConfig) sessionFactory
+ .getCurrentSession()
+ .get(
+ "org.openiam.idm.srvc.recon.dto.ReconciliationConfig",
+ id);
+ if (instance == null) {
+ log.debug("get successful, no instance found");
+ } else {
+ log.debug("get successful, instance found");
+ }
+ return instance;
+ } catch (RuntimeException re) {
+ log.error("get failed", re);
+ throw re;
+ }
+ }
+
+
+}
=======================================
--- /dev/null
+++
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/recon/service/ReconciliationResultDAOImpl.java
Wed Jun 9 22:23:19 2010
@@ -0,0 +1,101 @@
+package org.openiam.idm.srvc.recon.service;
+
+// Generated May 29, 2010 8:20:09 PM by Hibernate Tools
3.2.2.GA
+
+import java.util.List;
+import javax.naming.InitialContext;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.hibernate.LockMode;
+import org.hibernate.SessionFactory;
+import org.openiam.idm.srvc.recon.dto.ReconciliationResult;
+
+import static org.hibernate.criterion.Example.create;
+
+/**
+ * Home object for domain model class ReconiliationResult.
+ * @see org.openiam.idm.srvc.pswd.service.ReconiliationResult
+ * @author Hibernate Tools
+ */
+public class ReconciliationResultDAOImpl implements
ReconciliationResultDAO {
+
+ private static final Log log = LogFactory
+ .getLog(ReconciliationResultDAO.class);
+
+ private SessionFactory sessionFactory;
+
+
+ public void setSessionFactory(SessionFactory session) {
+ this.sessionFactory = session;
+ }
+
+ protected SessionFactory getSessionFactory() {
+ try {
+ return (SessionFactory) new InitialContext()
+ .lookup("SessionFactory");
+ } catch (Exception e) {
+ log.error("Could not locate SessionFactory in JNDI", e);
+ throw new IllegalStateException(
+ "Could not locate SessionFactory in JNDI");
+ }
+ }
+
+ public void add(ReconciliationResult transientInstance) {
+ log.debug("persisting ReconiliationResult instance");
+ try {
+ sessionFactory.getCurrentSession().persist(transientInstance);
+ log.debug("persist successful");
+ } catch (RuntimeException re) {
+ log.error("persist failed", re);
+ throw re;
+ }
+ }
+
+
+
+ public void remove(ReconciliationResult persistentInstance) {
+ log.debug("deleting ReconiliationResult instance");
+ try {
+ sessionFactory.getCurrentSession().delete(persistentInstance);
+ log.debug("delete successful");
+ } catch (RuntimeException re) {
+ log.error("delete failed", re);
+ throw re;
+ }
+ }
+
+ public ReconciliationResult update(ReconciliationResult detachedInstance)
{
+ log.debug("merging ReconiliationResult instance");
+ try {
+ ReconciliationResult result = (ReconciliationResult) sessionFactory
+ .getCurrentSession().merge(detachedInstance);
+ log.debug("merge successful");
+ return result;
+ } catch (RuntimeException re) {
+ log.error("merge failed", re);
+ throw re;
+ }
+ }
+
+ public ReconciliationResult findById(java.lang.String id) {
+ log.debug("getting ReconiliationResult instance with id: " + id);
+ try {
+ ReconciliationResult instance = (ReconciliationResult) sessionFactory
+ .getCurrentSession()
+ .get(
+ "org.openiam.idm.srvc.recon.dto.ReconiliationResult",
+ id);
+ if (instance == null) {
+ log.debug("get successful, no instance found");
+ } else {
+ log.debug("get successful, instance found");
+ }
+ return instance;
+ } catch (RuntimeException re) {
+ log.error("get failed", re);
+ throw re;
+ }
+ }
+
+
+}
=======================================
--- /dev/null
+++
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/recon/service/ReconciliationServiceImpl.java
Wed Jun 9 22:23:19 2010
@@ -0,0 +1,91 @@
+/*
+ * Copyright 2009, OpenIAM LLC
+ * This file is part of the OpenIAM Identity and Access Management Suite
+ *
+ * OpenIAM Identity and Access Management Suite is free software:
+ * you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License
+ * version 3 as published by the Free Software Foundation.
+ *
+ * OpenIAM is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * Lesser GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with OpenIAM. If not, see <
http://www.gnu.org/licenses/>. *
+ */
+
+/**
+ *
+ */
+package org.openiam.idm.srvc.recon.service;
+
+import java.util.List;
+
+import org.openiam.idm.srvc.recon.dto.ReconciliationConfig;
+import org.openiam.idm.srvc.synch.dto.SynchConfig;
+
+/**
+ * @author suneet
+ *
+ */
+public class ReconciliationServiceImpl implements ReconciliationService {
+
+ protected ReconciliationSituationDAO reconSituationDao;
+ protected ReconciliationResultDAO reconResultDao;
+ protected ReconciliationConfigDAO reconConfigDao;
+ protected ReconciliationResultDAO reconResultDetailDao;
+
+
+ /* (non-Javadoc)
+ * @see
org.openiam.idm.srvc.recon.service.ReconciliationService#getAllConfig()
+ */
+ public List<ReconciliationConfig> getAllConfig() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+
+ public ReconciliationSituationDAO getReconSituationDao() {
+ return reconSituationDao;
+ }
+
+
+ public void setReconSituationDao(ReconciliationSituationDAO
reconSituationDao) {
+ this.reconSituationDao = reconSituationDao;
+ }
+
+
+ public ReconciliationResultDAO getReconResultDao() {
+ return reconResultDao;
+ }
+
+
+ public void setReconResultDao(ReconciliationResultDAO reconResultDao) {
+ this.reconResultDao = reconResultDao;
+ }
+
+
+ public ReconciliationConfigDAO getReconConfigDao() {
+ return reconConfigDao;
+ }
+
+
+ public void setReconConfigDao(ReconciliationConfigDAO reconConfigDao) {
+ this.reconConfigDao = reconConfigDao;
+ }
+
+
+ public ReconciliationResultDAO getReconResultDetailDao() {
+ return reconResultDetailDao;
+ }
+
+
+ public void setReconResultDetailDao(ReconciliationResultDAO
reconResultDetailDao) {
+ this.reconResultDetailDao = reconResultDetailDao;
+ }
+
+
+
+}
=======================================
--- /dev/null
+++
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/recon/service/ReconciliationSituationDAOImpl.java
Wed Jun 9 22:23:19 2010
@@ -0,0 +1,98 @@
+package org.openiam.idm.srvc.recon.service;
+
+// Generated May 29, 2010 8:20:09 PM by Hibernate Tools
3.2.2.GA
+
+import java.util.List;
+import javax.naming.InitialContext;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.hibernate.LockMode;
+import org.hibernate.SessionFactory;
+import org.openiam.idm.srvc.recon.dto.ReconciliationSituation;
+
+import static org.hibernate.criterion.Example.create;
+
+/**
+ * Home object for domain model class ReconciliationSituation.
+ * @see org.openiam.idm.srvc.pswd.service.ReconciliationSituation
+ * @author Hibernate Tools
+ */
+public class ReconciliationSituationDAOImpl implements
ReconciliationSituationDAO {
+
+ private static final Log log = LogFactory
+ .getLog(ReconciliationSituationDAO.class);
+
+private SessionFactory sessionFactory;
+
+
+ public void setSessionFactory(SessionFactory session) {
+ this.sessionFactory = session;
+ }
+
+ protected SessionFactory getSessionFactory() {
+ try {
+ return (SessionFactory) new InitialContext()
+ .lookup("SessionFactory");
+ } catch (Exception e) {
+ log.error("Could not locate SessionFactory in JNDI", e);
+ throw new IllegalStateException(
+ "Could not locate SessionFactory in JNDI");
+ }
+ }
+
+ public void add(ReconciliationSituation transientInstance) {
+ log.debug("persisting ReconciliationSituation instance");
+ try {
+ sessionFactory.getCurrentSession().persist(transientInstance);
+ log.debug("persist successful");
+ } catch (RuntimeException re) {
+ log.error("persist failed", re);
+ throw re;
+ }
+ }
+
+ public void remove(ReconciliationSituation persistentInstance) {
+ log.debug("deleting ReconciliationSituation instance");
+ try {
+ sessionFactory.getCurrentSession().delete(persistentInstance);
+ log.debug("delete successful");
+ } catch (RuntimeException re) {
+ log.error("delete failed", re);
+ throw re;
+ }
+ }
+
+ public ReconciliationSituation update(ReconciliationSituation
detachedInstance) {
+ log.debug("merging ReconciliationSituation instance");
+ try {
+ ReconciliationSituation result = (ReconciliationSituation)
sessionFactory
+ .getCurrentSession().merge(detachedInstance);
+ log.debug("merge successful");
+ return result;
+ } catch (RuntimeException re) {
+ log.error("merge failed", re);
+ throw re;
+ }
+ }
+
+ public ReconciliationSituation findById(java.lang.String id) {
+ log.debug("getting ReconciliationSituation instance with id: " + id);
+ try {
+ ReconciliationSituation instance = (ReconciliationSituation)
sessionFactory
+ .getCurrentSession()
+ .get(
+ "org.openiam.idm.srvc.pswd.service.ReconciliationSituation",
+ id);
+ if (instance == null) {
+ log.debug("get successful, no instance found");
+ } else {
+ log.debug("get successful, instance found");
+ }
+ return instance;
+ } catch (RuntimeException re) {
+ log.error("get failed", re);
+ throw re;
+ }
+ }
+
+}
=======================================
--- /dev/null
+++
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/recon/ws/ReconciliationWebServiceImpl.java
Wed Jun 9 22:23:19 2010
@@ -0,0 +1,61 @@
+/*
+ * Copyright 2009, OpenIAM LLC
+ * This file is part of the OpenIAM Identity and Access Management Suite
+ *
+ * OpenIAM Identity and Access Management Suite is free software:
+ * you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License
+ * version 3 as published by the Free Software Foundation.
+ *
+ * OpenIAM is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * Lesser GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with OpenIAM. If not, see <
http://www.gnu.org/licenses/>. *
+ */
+
+/**
+ *
+ */
+package
org.openiam.idm.srvc.recon.ws;
+
+import javax.jws.WebService;
+
+import org.openiam.idm.srvc.recon.service.ReconciliationService;
+import org.openiam.idm.srvc.synch.ws.IdentitySynchWebService;
+import org.openiam.idm.srvc.synch.ws.SynchConfigListResponse;
+
+/**
+ * @author suneet
+ *
+ */
+@WebService(endpointInterface
= "org.openiam.idm.srvc.recon.ws.ReconciliationWebService",
+ targetNamespace = "
http://www.openiam.org/service/recon",
+ portName = "ReconciliationWebServicePort",
+ serviceName = "ReconciliationWebService")
+public class ReconciliationWebServiceImpl implements
ReconciliationWebService {
+
+ ReconciliationService reconService;
+
+
+ /* (non-Javadoc)
+ * @see
org.openiam.idm.srvc.recon.ws.ReconciliationWebService#getAllConfig()
+ */
+ public ReconciliationConfigListResponse getAllConfig() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+
+ public ReconciliationService getReconService() {
+ return reconService;
+ }
+
+
+ public void setReconService(ReconciliationService reconService) {
+ this.reconService = reconService;
+ }
+
+}
=======================================
--- /dev/null
+++
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/synch/service/IdentitySynchServiceImpl.java
Wed Jun 9 22:23:19 2010
@@ -0,0 +1,66 @@
+/*
+ * Copyright 2009, OpenIAM LLC
+ * This file is part of the OpenIAM Identity and Access Management Suite
+ *
+ * OpenIAM Identity and Access Management Suite is free software:
+ * you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License
+ * version 3 as published by the Free Software Foundation.
+ *
+ * OpenIAM is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * Lesser GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with OpenIAM. If not, see <
http://www.gnu.org/licenses/>. *
+ */
+
+/**
+ *
+ */
+package org.openiam.idm.srvc.synch.service;
+
+import java.util.List;
+
+import org.openiam.idm.srvc.synch.dto.SynchConfig;
+
+/**
+ * @author suneet
+ *
+ */
+public class IdentitySynchServiceImpl implements IdentitySynchService {
+ SynchConfigDAO synchConfigDao;
+ SynchConfigDataMappingDAO synchConfigMappingDao;
+
+
+ /* (non-Javadoc)
+ * @see
org.openiam.idm.srvc.synch.service.IdentitySynchService#getAllConfig()
+ */
+ public List<SynchConfig> getAllConfig() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+
+ public SynchConfigDAO getSynchConfigDao() {
+ return synchConfigDao;
+ }
+
+
+ public void setSynchConfigDao(SynchConfigDAO synchConfigDao) {
+ this.synchConfigDao = synchConfigDao;
+ }
+
+
+ public SynchConfigDataMappingDAO getSynchConfigMappingDao() {
+ return synchConfigMappingDao;
+ }
+
+
+ public void setSynchConfigMappingDao(
+ SynchConfigDataMappingDAO synchConfigMappingDao) {
+ this.synchConfigMappingDao = synchConfigMappingDao;
+ }
+
+}
=======================================
--- /dev/null
+++
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/synch/service/SynchConfigDAOImpl.java
Wed Jun 9 22:23:19 2010
@@ -0,0 +1,98 @@
+package org.openiam.idm.srvc.synch.service;
+
+// Generated May 29, 2010 8:20:09 PM by Hibernate Tools
3.2.2.GA
+
+import java.util.List;
+import javax.naming.InitialContext;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.hibernate.LockMode;
+import org.hibernate.SessionFactory;
+import org.openiam.idm.srvc.synch.dto.SynchConfig;
+
+import static org.hibernate.criterion.Example.create;
+
+/**
+ * Home object for domain model class SynchConfig.
+ * @see org.openiam.idm.srvc.pswd.service.SynchConfig
+ * @author Hibernate Tools
+ */
+public class SynchConfigDAOImpl implements SynchConfigDAO {
+
+ private static final Log log =
LogFactory.getLog(SynchConfigDAOImpl.class);
+
+ private SessionFactory sessionFactory;
+
+
+ public void setSessionFactory(SessionFactory session) {
+ this.sessionFactory = session;
+ }
+
+ protected SessionFactory getSessionFactory() {
+ try {
+ return (SessionFactory) new InitialContext()
+ .lookup("SessionFactory");
+ } catch (Exception e) {
+ log.error("Could not locate SessionFactory in JNDI", e);
+ throw new IllegalStateException(
+ "Could not locate SessionFactory in JNDI");
+ }
+ }
+
+ public SynchConfig add(SynchConfig transientInstance) {
+ log.debug("persisting SynchConfig instance");
+ try {
+ sessionFactory.getCurrentSession().persist(transientInstance);
+ log.debug("persist successful");
+ return transientInstance;
+ } catch (RuntimeException re) {
+ log.error("persist failed", re);
+ throw re;
+ }
+ }
+
+
+
+ public void remove(SynchConfig persistentInstance) {
+ log.debug("deleting SynchConfig instance");
+ try {
+ sessionFactory.getCurrentSession().delete(persistentInstance);
+ log.debug("delete successful");
+ } catch (RuntimeException re) {
+ log.error("delete failed", re);
+ throw re;
+ }
+ }
+
+ public SynchConfig update(SynchConfig detachedInstance) {
+ log.debug("merging SynchConfig instance");
+ try {
+ SynchConfig result = (SynchConfig) sessionFactory
+ .getCurrentSession().merge(detachedInstance);
+ log.debug("merge successful");
+ return result;
+ } catch (RuntimeException re) {
+ log.error("merge failed", re);
+ throw re;
+ }
+ }
+
+ public SynchConfig findById(java.lang.String id) {
+ log.debug("getting SynchConfig instance with id: " + id);
+ try {
+ SynchConfig instance = (SynchConfig) sessionFactory
+ .getCurrentSession()
+ .get("org.openiam.idm.srvc.pswd.service.SynchConfig", id);
+ if (instance == null) {
+ log.debug("get successful, no instance found");
+ } else {
+ log.debug("get successful, instance found");
+ }
+ return instance;
+ } catch (RuntimeException re) {
+ log.error("get failed", re);
+ throw re;
+ }
+ }
+
+}
=======================================
--- /dev/null
+++
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/synch/service/SynchConfigDataMappingDAOImpl.java
Wed Jun 9 22:23:19 2010
@@ -0,0 +1,102 @@
+package org.openiam.idm.srvc.synch.service;
+
+// Generated May 29, 2010 8:20:09 PM by Hibernate Tools
3.2.2.GA
+
+import java.util.List;
+import javax.naming.InitialContext;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.hibernate.LockMode;
+import org.hibernate.SessionFactory;
+import org.openiam.idm.srvc.synch.dto.SynchConfig;
+import org.openiam.idm.srvc.synch.dto.SynchConfigDataMapping;
+
+import static org.hibernate.criterion.Example.create;
+
+/**
+ * Home object for domain model class SynchConfigDataMapping.
+ * @see org.openiam.idm.srvc.pswd.service.SynchConfigDataMapping
+ * @author Hibernate Tools
+ */
+public class SynchConfigDataMappingDAOImpl implements
SynchConfigDataMappingDAO {
+
+ private static final Log log = LogFactory
+ .getLog(SynchConfigDataMappingDAOImpl.class);
+
+ private SessionFactory sessionFactory;
+
+
+ public void setSessionFactory(SessionFactory session) {
+ this.sessionFactory = session;
+ }
+
+ protected SessionFactory getSessionFactory() {
+ try {
+ return (SessionFactory) new InitialContext()
+ .lookup("SessionFactory");
+ } catch (Exception e) {
+ log.error("Could not locate SessionFactory in JNDI", e);
+ throw new IllegalStateException(
+ "Could not locate SessionFactory in JNDI");
+ }
+ }
+
+ public SynchConfigDataMapping add(SynchConfigDataMapping
transientInstance) {
+ log.debug("persisting SynchConfig instance");
+ try {
+ sessionFactory.getCurrentSession().persist(transientInstance);
+ log.debug("persist successful");
+ return transientInstance;
+ } catch (RuntimeException re) {
+ log.error("persist failed", re);
+ throw re;
+ }
+ }
+
+
+
+ public void remove(SynchConfigDataMapping persistentInstance) {
+ log.debug("deleting SynchConfigDataMapping instance");
+ try {
+ sessionFactory.getCurrentSession().delete(persistentInstance);
+ log.debug("delete successful");
+ } catch (RuntimeException re) {
+ log.error("delete failed", re);
+ throw re;
+ }
+ }
+
+ public SynchConfigDataMapping update(SynchConfigDataMapping
detachedInstance) {
+ log.debug("merging SynchConfigDataMapping instance");
+ try {
+ SynchConfigDataMapping result = (SynchConfigDataMapping) sessionFactory
+ .getCurrentSession().merge(detachedInstance);
+ log.debug("merge successful");
+ return result;
+ } catch (RuntimeException re) {
+ log.error("merge failed", re);
+ throw re;
+ }
+ }
+
+ public SynchConfigDataMapping findById(java.lang.String id) {
+ log.debug("getting SynchConfigDataMapping instance with id: " + id);
+ try {
+ SynchConfigDataMapping instance = (SynchConfigDataMapping)
sessionFactory
+ .getCurrentSession()
+ .get(
+ "org.openiam.idm.srvc.pswd.service.SynchConfigDataMapping",
+ id);
+ if (instance == null) {
+ log.debug("get successful, no instance found");
+ } else {
+ log.debug("get successful, instance found");
+ }
+ return instance;
+ } catch (RuntimeException re) {
+ log.error("get failed", re);
+ throw re;
+ }
+ }
+
+}
=======================================
--- /dev/null
+++
/trunk/idm-connector-core/src/main/java/org/openiam/idm/srvc/synch/ws/IdentitySynchWebServiceImpl.java
Wed Jun 9 22:23:19 2010
@@ -0,0 +1,58 @@
+/*
+ * Copyright 2009, OpenIAM LLC
+ * This file is part of the OpenIAM Identity and Access Management Suite
+ *
+ * OpenIAM Identity and Access Management Suite is free software:
+ * you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License
+ * version 3 as published by the Free Software Foundation.
+ *
+ * OpenIAM is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * Lesser GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with OpenIAM. If not, see <
http://www.gnu.org/licenses/>. *
+ */
+
+/**
+ *
+ */
+package
org.openiam.idm.srvc.synch.ws;
+
+import javax.jws.WebService;
+
+import org.openiam.idm.srvc.synch.service.IdentitySynchService;
+import org.openiam.idm.srvc.synch.ws.IdentitySynchWebService;
+import org.openiam.idm.srvc.synch.ws.SynchConfigListResponse;
+
+/**
+ * @author suneet
+ *
+ */
+@WebService(endpointInterface
= "org.openiam.idm.srvc.synch.ws.IdentitySynchWebService",
+ targetNamespace = "
http://www.openiam.org/service/synch",
+ portName = "IdentitySynchWebServicePort",
+ serviceName = "IdentitySynchWebService")
+public class IdentitySynchWebServiceImpl implements
IdentitySynchWebService {
+
+ IdentitySynchService synchService;
+
+ /* (non-Javadoc)
+ * @see
org.openiam.idm.srvc.sync.ws.IdentitySynchWebService#getAllConfig()
+ */
+ public SynchConfigListResponse getAllConfig() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public IdentitySynchService getSynchService() {
+ return synchService;
+ }
+
+ public void setSynchService(IdentitySynchService synchService) {
+ this.synchService = synchService;
+ }
+
+}
=======================================
***Additional files exist in this changeset.***