use of org.identityconnectors.framework.common.objects.OperationOptions in project CzechIdMng by bcvsolutions.
the class ConnIdIcConnectorService method search.
@Override
public void search(IcConnectorInstance connectorInstance, IcConnectorConfiguration connectorConfiguration, IcObjectClass objectClass, IcFilter filter, IcResultsHandler handler) {
Assert.notNull(connectorInstance, "Connector instance is required.");
Assert.notNull(connectorInstance.getConnectorKey(), "Connector key is required.");
Assert.notNull(connectorConfiguration, "Configuration is required.");
Assert.notNull(objectClass, "Object class is required.");
Assert.notNull(handler, "Handler is required.");
LOG.debug("Start search for connector {} and objectClass {} and filter {} - ConnId", connectorInstance.getConnectorKey().toString(), objectClass.getDisplayName(), filter);
ConnectorFacade conn = facadeFactory.getConnectorFacade(connectorInstance, connectorConfiguration);
ObjectClass objectClassConnId = ConnIdIcConvertUtil.convertIcObjectClass(objectClass);
if (objectClassConnId == null) {
objectClassConnId = ObjectClass.ACCOUNT;
}
final SearchResultsHandler handlerConnId = new SearchResultsHandler() {
@Override
public boolean handle(ConnectorObject connectorObject) {
return handler.handle(ConnIdIcConvertUtil.convertConnIdConnectorObject(connectorObject));
}
@Override
public void handleResult(SearchResult result) {
// VS TODO: For all my tests was search result Null and this method (handle result) was not called!
LOG.debug("SearchResul was returned (pagination): cookie: {} --- remaining paged results: {}", result.getPagedResultsCookie(), result.getRemainingPagedResults());
}
};
Filter filterConnId = ConnIdIcConvertUtil.convertIcFilter(filter);
this.pageSearch(conn, objectClassConnId, filterConnId, handlerConnId, new OperationOptions(connectorConfiguration.getSystemOperationOptions()));
}
use of org.identityconnectors.framework.common.objects.OperationOptions in project CzechIdMng by bcvsolutions.
the class ConnIdIcConnectorService method authenticateObject.
@Override
public IcUidAttribute authenticateObject(IcConnectorInstance connectorInstance, IcConnectorConfiguration connectorConfiguration, IcObjectClass objectClass, String username, GuardedString password) {
Assert.notNull(connectorInstance, "Connector instance is required.");
Assert.notNull(connectorInstance.getConnectorKey(), "Connector key is required.");
Assert.notNull(connectorConfiguration, "Configuration is required.");
Assert.notNull(username, "Username is required.");
LOG.debug("Authenticate object - ConnId (username= {} {})", username, connectorInstance.getConnectorKey().toString());
ConnectorFacade conn = facadeFactory.getConnectorFacade(connectorInstance, connectorConfiguration);
ObjectClass objectClassConnId = ConnIdIcConvertUtil.convertIcObjectClass(objectClass);
if (objectClassConnId == null) {
objectClassConnId = ObjectClass.ACCOUNT;
}
try {
IcUidAttribute uid = ConnIdIcConvertUtil.convertConnIdUid(conn.authenticate(objectClassConnId, username, new org.identityconnectors.common.security.GuardedString(password.asString().toCharArray()), new OperationOptions(connectorConfiguration.getSystemOperationOptions())));
LOG.debug("Authenticated object - ConnId (Uid= {})", uid);
return uid;
} catch (InvalidCredentialException ex) {
throw new ResultCodeException(IcResultCode.AUTH_FAILED, ex);
}
}
Aggregations