You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by il...@apache.org on 2015/11/10 19:04:01 UTC
[2/4] syncope git commit: [SYNCOPE-729] Not considering CREATE or
UPDATE but only SEARCH during getObject
[SYNCOPE-729] Not considering CREATE or UPDATE but only SEARCH during getObject
Project: http://git-wip-us.apache.org/repos/asf/syncope/repo
Commit: http://git-wip-us.apache.org/repos/asf/syncope/commit/c6e00812
Tree: http://git-wip-us.apache.org/repos/asf/syncope/tree/c6e00812
Diff: http://git-wip-us.apache.org/repos/asf/syncope/diff/c6e00812
Branch: refs/heads/master
Commit: c6e008125fb08e9b939acb73e233742ad0c3824f
Parents: 573a4e3
Author: Francesco Chicchiriccò <il...@apache.org>
Authored: Tue Nov 10 18:54:51 2015 +0100
Committer: Francesco Chicchiriccò <il...@apache.org>
Committed: Tue Nov 10 18:54:51 2015 +0100
----------------------------------------------------------------------
.../syncope/core/propagation/Connector.java | 15 -------
.../impl/AbstractPropagationTaskExecutor.java | 3 +-
.../propagation/impl/ConnectorFacadeProxy.java | 41 ++------------------
3 files changed, 5 insertions(+), 54 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/syncope/blob/c6e00812/core/src/main/java/org/apache/syncope/core/propagation/Connector.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/syncope/core/propagation/Connector.java b/core/src/main/java/org/apache/syncope/core/propagation/Connector.java
index c182fe3..869d7d6 100644
--- a/core/src/main/java/org/apache/syncope/core/propagation/Connector.java
+++ b/core/src/main/java/org/apache/syncope/core/propagation/Connector.java
@@ -22,7 +22,6 @@ import java.util.Collection;
import java.util.List;
import java.util.Set;
import org.apache.syncope.common.types.PropagationMode;
-import org.apache.syncope.common.types.ResourceOperation;
import org.apache.syncope.core.persistence.beans.AbstractMappingItem;
import org.apache.syncope.core.persistence.beans.ConnInstance;
import org.identityconnectors.framework.common.objects.Attribute;
@@ -119,20 +118,6 @@ public interface Connector {
ConnectorObject getObject(ObjectClass objectClass, Uid uid, OperationOptions options);
/**
- * Get remote object used by the propagation manager in order to choose for a create (object doesn't exist) or an
- * update (object exists).
- *
- * @param propagationMode propagation mode
- * @param operationType resource operation type
- * @param objectClass ConnId's object class
- * @param uid ConnId's Uid
- * @param options ConnId's OperationOptions
- * @return ConnId's connector object for given uid
- */
- ConnectorObject getObject(PropagationMode propagationMode, ResourceOperation operationType, ObjectClass objectClass,
- Uid uid, OperationOptions options);
-
- /**
* Search for remote objects.
*
* @param objectClass ConnId's object class
http://git-wip-us.apache.org/repos/asf/syncope/blob/c6e00812/core/src/main/java/org/apache/syncope/core/propagation/impl/AbstractPropagationTaskExecutor.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/syncope/core/propagation/impl/AbstractPropagationTaskExecutor.java b/core/src/main/java/org/apache/syncope/core/propagation/impl/AbstractPropagationTaskExecutor.java
index ac31ec4..54b7084 100644
--- a/core/src/main/java/org/apache/syncope/core/propagation/impl/AbstractPropagationTaskExecutor.java
+++ b/core/src/main/java/org/apache/syncope/core/propagation/impl/AbstractPropagationTaskExecutor.java
@@ -491,8 +491,7 @@ public abstract class AbstractPropagationTaskExecutor implements PropagationTask
ConnectorObject obj = null;
try {
- obj = connector.getObject(task.getPropagationMode(),
- task.getPropagationOperation(),
+ obj = connector.getObject(
new ObjectClass(task.getObjectClassName()),
new Uid(accountId),
connector.getOperationOptions(AttributableUtil.getInstance(task.getSubjectType()).
http://git-wip-us.apache.org/repos/asf/syncope/blob/c6e00812/core/src/main/java/org/apache/syncope/core/propagation/impl/ConnectorFacadeProxy.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/syncope/core/propagation/impl/ConnectorFacadeProxy.java b/core/src/main/java/org/apache/syncope/core/propagation/impl/ConnectorFacadeProxy.java
index 980a3df..fb3c872 100644
--- a/core/src/main/java/org/apache/syncope/core/propagation/impl/ConnectorFacadeProxy.java
+++ b/core/src/main/java/org/apache/syncope/core/propagation/impl/ConnectorFacadeProxy.java
@@ -30,7 +30,6 @@ import java.util.concurrent.TimeUnit;
import org.apache.syncope.common.types.ConnConfProperty;
import org.apache.syncope.common.types.ConnectorCapability;
import org.apache.syncope.common.types.PropagationMode;
-import org.apache.syncope.common.types.ResourceOperation;
import org.apache.syncope.core.connid.ConnPoolConfUtil;
import org.apache.syncope.core.persistence.beans.AbstractMappingItem;
import org.apache.syncope.core.persistence.beans.ConnInstance;
@@ -305,44 +304,10 @@ public class ConnectorFacadeProxy implements Connector {
@Override
public ConnectorObject getObject(final ObjectClass objectClass, final Uid uid, final OperationOptions options) {
- return getObject(null, null, objectClass, uid, options);
- }
-
- @Override
- public ConnectorObject getObject(final PropagationMode propagationMode, final ResourceOperation operationType,
- final ObjectClass objectClass, final Uid uid, final OperationOptions options) {
-
Future<ConnectorObject> future = null;
if (activeConnInstance.getCapabilities().contains(ConnectorCapability.SEARCH)) {
- if (operationType == null) {
- future = asyncFacade.getObject(connector, objectClass, uid, options);
- } else {
- switch (operationType) {
- case CREATE:
- if (propagationMode == null || (propagationMode == PropagationMode.ONE_PHASE
- ? activeConnInstance.getCapabilities().
- contains(ConnectorCapability.ONE_PHASE_CREATE)
- : activeConnInstance.getCapabilities().
- contains(ConnectorCapability.TWO_PHASES_CREATE))) {
-
- future = asyncFacade.getObject(connector, objectClass, uid, options);
- }
- break;
- case UPDATE:
- if (propagationMode == null || (propagationMode == PropagationMode.ONE_PHASE
- ? activeConnInstance.getCapabilities().
- contains(ConnectorCapability.ONE_PHASE_UPDATE)
- : activeConnInstance.getCapabilities().
- contains(ConnectorCapability.TWO_PHASES_UPDATE))) {
-
- future = asyncFacade.getObject(connector, objectClass, uid, options);
- }
- break;
- default:
- future = asyncFacade.getObject(connector, objectClass, uid, options);
- }
- }
+ future = asyncFacade.getObject(connector, objectClass, uid, options);
} else {
LOG.info("Search was attempted, although the connector only has these capabilities: {}. No action.",
activeConnInstance.getCapabilities());
@@ -351,7 +316,9 @@ public class ConnectorFacadeProxy implements Connector {
try {
return future == null ? null : future.get(activeConnInstance.getConnRequestTimeout(), TimeUnit.SECONDS);
} catch (java.util.concurrent.TimeoutException e) {
- future.cancel(true);
+ if (future != null) {
+ future.cancel(true);
+ }
throw new TimeoutException("Request timeout");
} catch (Exception e) {
LOG.error("Connector request execution failure", e);