You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by jb...@apache.org on 2013/01/30 10:55:41 UTC
svn commit: r1440323 - in /syncope/trunk:
client/src/main/java/org/apache/syncope/client/services/proxy/
console/src/main/java/org/apache/syncope/console/rest/
core/src/main/java/org/apache/syncope/core/services/
core/src/test/java/org/apache/syncope/c...
Author: jbernhardt
Date: Wed Jan 30 09:55:40 2013
New Revision: 1440323
URL: http://svn.apache.org/viewvc?rev=1440323&view=rev
Log:
[SYNCOPE-231][SYNCOPE-289]
* Fixing UserService
* Removing RestTemplate dependencies from IT tests
* Code cleanup
Modified:
syncope/trunk/client/src/main/java/org/apache/syncope/client/services/proxy/RoleServiceProxy.java
syncope/trunk/client/src/main/java/org/apache/syncope/client/services/proxy/UserRequestServiceProxy.java
syncope/trunk/client/src/main/java/org/apache/syncope/client/services/proxy/UserServiceProxy.java
syncope/trunk/console/src/main/java/org/apache/syncope/console/rest/UserRequestRestClient.java
syncope/trunk/core/src/main/java/org/apache/syncope/core/services/LoggerServiceImpl.java
syncope/trunk/core/src/main/java/org/apache/syncope/core/services/NotificationServiceImpl.java
syncope/trunk/core/src/main/java/org/apache/syncope/core/services/PolicyServiceImpl.java
syncope/trunk/core/src/main/java/org/apache/syncope/core/services/ReportServiceImpl.java
syncope/trunk/core/src/main/java/org/apache/syncope/core/services/ResourceServiceImpl.java
syncope/trunk/core/src/main/java/org/apache/syncope/core/services/RoleServiceImpl.java
syncope/trunk/core/src/main/java/org/apache/syncope/core/services/SchemaServiceImpl.java
syncope/trunk/core/src/main/java/org/apache/syncope/core/services/UserRequestServiceImpl.java
syncope/trunk/core/src/main/java/org/apache/syncope/core/services/UserServiceImpl.java
syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/AbstractTest.java
syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/AuthenticationTestITCase.java
syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/RoleTestITCase.java
syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/UserRequestTestITCase.java
syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/UserTestITCase.java
Modified: syncope/trunk/client/src/main/java/org/apache/syncope/client/services/proxy/RoleServiceProxy.java
URL: http://svn.apache.org/viewvc/syncope/trunk/client/src/main/java/org/apache/syncope/client/services/proxy/RoleServiceProxy.java?rev=1440323&r1=1440322&r2=1440323&view=diff
==============================================================================
--- syncope/trunk/client/src/main/java/org/apache/syncope/client/services/proxy/RoleServiceProxy.java (original)
+++ syncope/trunk/client/src/main/java/org/apache/syncope/client/services/proxy/RoleServiceProxy.java Wed Jan 30 09:55:40 2013
@@ -54,7 +54,10 @@ public class RoleServiceProxy extends Sp
RoleTO role = getRestTemplate().postForObject(baseUrl + "role/create", roleTO, RoleTO.class);
URI location = URI.create(baseUrl + "role/read/" + role.getId() + ".json");
- return Response.created(location).header(SyncopeConstants.REST_HEADER_ID, role.getId()).entity(role).build();
+ return Response.created(location)
+ .header(SyncopeConstants.REST_HEADER_ID, role.getId())
+ .entity(role)
+ .build();
}
@Override
Modified: syncope/trunk/client/src/main/java/org/apache/syncope/client/services/proxy/UserRequestServiceProxy.java
URL: http://svn.apache.org/viewvc/syncope/trunk/client/src/main/java/org/apache/syncope/client/services/proxy/UserRequestServiceProxy.java?rev=1440323&r1=1440322&r2=1440323&view=diff
==============================================================================
--- syncope/trunk/client/src/main/java/org/apache/syncope/client/services/proxy/UserRequestServiceProxy.java (original)
+++ syncope/trunk/client/src/main/java/org/apache/syncope/client/services/proxy/UserRequestServiceProxy.java Wed Jan 30 09:55:40 2013
@@ -22,6 +22,8 @@ import java.net.URI;
import java.util.Arrays;
import java.util.List;
import javax.ws.rs.core.Response;
+
+import org.apache.syncope.common.SyncopeConstants;
import org.apache.syncope.common.services.UserRequestService;
import org.apache.syncope.common.to.UserRequestTO;
import org.springframework.web.client.RestTemplate;
@@ -39,7 +41,7 @@ public class UserRequestServiceProxy ext
@Override
public boolean isCreateAllowed() {
- return getRestTemplate().getForObject(baseUrl + "user/request/create/allowed", Boolean.class);
+ return getRestTemplate().getForObject(baseUrl + "user/request/create/allowed.json", Boolean.class);
}
@Override
@@ -62,24 +64,24 @@ public class UserRequestServiceProxy ext
UserRequestTO.class);
}
- URI location = URI.create(baseUrl + "user/request/read/" + created.getId());
- return Response.created(location).entity(created.getId()).build();
+ URI location = URI.create(baseUrl + "user/request/read/" + created.getId() + ".json");
+ return Response.created(location).header(SyncopeConstants.REST_HEADER_ID, created.getId()).build();
}
@Override
public List<UserRequestTO> list() {
- return Arrays.asList(getRestTemplate().getForObject(baseUrl + "user/request/list", UserRequestTO[].class));
+ return Arrays.asList(getRestTemplate().getForObject(baseUrl + "user/request/list.json", UserRequestTO[].class));
}
@Override
public UserRequestTO read(final Long requestId) {
return getRestTemplate().getForObject(
- baseUrl + "user/request/read/{requestId}", UserRequestTO.class, requestId);
+ baseUrl + "user/request/read/{requestId}.json", UserRequestTO.class, requestId);
}
@Override
public void delete(final Long requestId) {
getRestTemplate().getForObject(
- baseUrl + "user/request/deleteRequest/{requestId}", UserRequestTO.class, requestId);
+ baseUrl + "user/request/deleteRequest/{requestId}.json", UserRequestTO.class, requestId);
}
}
Modified: syncope/trunk/client/src/main/java/org/apache/syncope/client/services/proxy/UserServiceProxy.java
URL: http://svn.apache.org/viewvc/syncope/trunk/client/src/main/java/org/apache/syncope/client/services/proxy/UserServiceProxy.java?rev=1440323&r1=1440322&r2=1440323&view=diff
==============================================================================
--- syncope/trunk/client/src/main/java/org/apache/syncope/client/services/proxy/UserServiceProxy.java (original)
+++ syncope/trunk/client/src/main/java/org/apache/syncope/client/services/proxy/UserServiceProxy.java Wed Jan 30 09:55:40 2013
@@ -24,6 +24,7 @@ import java.util.List;
import javax.ws.rs.core.Response;
+import org.apache.syncope.common.SyncopeConstants;
import org.apache.syncope.common.mod.UserMod;
import org.apache.syncope.common.search.NodeCond;
import org.apache.syncope.common.services.UserService;
@@ -75,8 +76,11 @@ public class UserServiceProxy extends Sp
@Override
public Response create(final UserTO userTO) {
UserTO created = getRestTemplate().postForObject(baseUrl + "user/create", userTO, UserTO.class);
- URI location = URI.create(baseUrl + "user/" + created.getId());
- return Response.created(location).entity(created).build();
+ URI location = URI.create(baseUrl + "user/read/" + created.getId() + ".json");
+ return Response.created(location)
+ .header(SyncopeConstants.REST_HEADER_ID, created.getId())
+ .entity(created)
+ .build();
}
@Override
Modified: syncope/trunk/console/src/main/java/org/apache/syncope/console/rest/UserRequestRestClient.java
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/java/org/apache/syncope/console/rest/UserRequestRestClient.java?rev=1440323&r1=1440322&r2=1440323&view=diff
==============================================================================
--- syncope/trunk/console/src/main/java/org/apache/syncope/console/rest/UserRequestRestClient.java (original)
+++ syncope/trunk/console/src/main/java/org/apache/syncope/console/rest/UserRequestRestClient.java Wed Jan 30 09:55:40 2013
@@ -22,6 +22,7 @@ import java.util.List;
import javax.ws.rs.core.Response;
+import org.apache.syncope.common.SyncopeConstants;
import org.apache.syncope.common.mod.UserMod;
import org.apache.syncope.common.services.UserRequestService;
import org.apache.syncope.common.to.UserRequestTO;
@@ -42,27 +43,24 @@ public class UserRequestRestClient exten
getService(UserRequestService.class).delete(requestId);
}
- public UserRequestTO requestCreate(final UserTO userTO) {
+ public void requestCreate(final UserTO userTO) {
UserRequestTO userRequestTO = new UserRequestTO();
userRequestTO.setType(UserRequestType.CREATE);
userRequestTO.setUserTO(userTO);
- Response response = getService(UserRequestService.class).create(userRequestTO);
- return getService(UserRequestService.class).read((Long) response.getEntity());
+ getService(UserRequestService.class).create(userRequestTO);
}
- public UserRequestTO requestUpdate(final UserMod userMod) {
+ public void requestUpdate(final UserMod userMod) {
UserRequestTO userRequestTO = new UserRequestTO();
userRequestTO.setType(UserRequestType.UPDATE);
userRequestTO.setUserMod(userMod);
- Response response = getService(UserRequestService.class).create(userRequestTO);
- return getService(UserRequestService.class).read((Long) response.getEntity());
+ getService(UserRequestService.class).create(userRequestTO);
}
- public UserRequestTO requestDelete(final Long userId) {
+ public void requestDelete(final Long userId) {
UserRequestTO userRequestTO = new UserRequestTO();
userRequestTO.setType(UserRequestType.DELETE);
userRequestTO.setUserId(userId);
- Response response = getService(UserRequestService.class).create(userRequestTO);
- return getService(UserRequestService.class).read((Long) response.getEntity());
+ getService(UserRequestService.class).create(userRequestTO);
}
}
Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/services/LoggerServiceImpl.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/services/LoggerServiceImpl.java?rev=1440323&r1=1440322&r2=1440323&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/services/LoggerServiceImpl.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/services/LoggerServiceImpl.java Wed Jan 30 09:55:40 2013
@@ -40,6 +40,29 @@ public class LoggerServiceImpl implement
private LoggerController loggerController;
@Override
+ public void delete(final LoggerType type, final String name) {
+ switch (type) {
+ case NORMAL:
+ loggerController.deleteLog(name);
+ break;
+
+ case AUDIT:
+ try {
+ loggerController.disableAudit(AuditLoggerName.fromLoggerName(name));
+ } catch (IllegalArgumentException e) {
+ throw new BadRequestException(e);
+ } catch (ParseException e) {
+ throw new BadRequestException(e);
+ }
+ break;
+
+ default:
+ throw new BadRequestException();
+ }
+
+ }
+
+ @Override
public List<LoggerTO> list(final LoggerType type) {
switch (type) {
case NORMAL:
@@ -87,27 +110,4 @@ public class LoggerServiceImpl implement
}
}
- @Override
- public void delete(final LoggerType type, final String name) {
- switch (type) {
- case NORMAL:
- loggerController.deleteLog(name);
- break;
-
- case AUDIT:
- try {
- loggerController.disableAudit(AuditLoggerName.fromLoggerName(name));
- } catch (IllegalArgumentException e) {
- throw new BadRequestException(e);
- } catch (ParseException e) {
- throw new BadRequestException(e);
- }
- break;
-
- default:
- throw new BadRequestException();
- }
-
- }
-
}
Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/services/NotificationServiceImpl.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/services/NotificationServiceImpl.java?rev=1440323&r1=1440322&r2=1440323&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/services/NotificationServiceImpl.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/services/NotificationServiceImpl.java Wed Jan 30 09:55:40 2013
@@ -24,6 +24,7 @@ import java.util.List;
import javax.ws.rs.core.Response;
import javax.ws.rs.core.UriInfo;
+import org.apache.syncope.common.SyncopeConstants;
import org.apache.syncope.common.services.NotificationService;
import org.apache.syncope.common.to.NotificationTO;
import org.apache.syncope.core.rest.controller.NotificationController;
@@ -42,7 +43,9 @@ public class NotificationServiceImpl imp
public Response create(final NotificationTO notificationTO) {
NotificationTO createdNotificationTO = notificationController.createInternal(notificationTO);
URI location = uriInfo.getAbsolutePathBuilder().path("" + createdNotificationTO.getId()).build();
- return Response.created(location).build();
+ return Response.created(location)
+ .header(SyncopeConstants.REST_HEADER_ID, createdNotificationTO.getId())
+ .build();
}
@Override
Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/services/PolicyServiceImpl.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/services/PolicyServiceImpl.java?rev=1440323&r1=1440322&r2=1440323&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/services/PolicyServiceImpl.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/services/PolicyServiceImpl.java Wed Jan 30 09:55:40 2013
@@ -64,7 +64,9 @@ public class PolicyServiceImpl implement
throw new BadRequestException();
}
URI location = uriInfo.getAbsolutePathBuilder().path(policy.getId() + "").build();
- return Response.created(location).header(SyncopeConstants.REST_HEADER_ID, policy.getId()).build();
+ return Response.created(location)
+ .header(SyncopeConstants.REST_HEADER_ID, policy.getId())
+ .build();
}
@Override
Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/services/ReportServiceImpl.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/services/ReportServiceImpl.java?rev=1440323&r1=1440322&r2=1440323&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/services/ReportServiceImpl.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/services/ReportServiceImpl.java Wed Jan 30 09:55:40 2013
@@ -28,6 +28,7 @@ import javax.ws.rs.core.Response;
import javax.ws.rs.core.StreamingOutput;
import javax.ws.rs.core.UriInfo;
+import org.apache.syncope.common.SyncopeConstants;
import org.apache.syncope.common.services.ReportService;
import org.apache.syncope.common.to.ReportExecTO;
import org.apache.syncope.common.to.ReportTO;
@@ -53,7 +54,9 @@ public class ReportServiceImpl implement
public Response create(final ReportTO reportTO) {
ReportTO createdReportTO = reportController.createInternal(reportTO);
URI location = uriInfo.getAbsolutePathBuilder().path("" + createdReportTO.getId()).build();
- return Response.created(location).build();
+ return Response.created(location)
+ .header(SyncopeConstants.REST_HEADER_ID, createdReportTO.getId())
+ .build();
}
@Override
Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/services/ResourceServiceImpl.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/services/ResourceServiceImpl.java?rev=1440323&r1=1440322&r2=1440323&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/services/ResourceServiceImpl.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/services/ResourceServiceImpl.java Wed Jan 30 09:55:40 2013
@@ -48,7 +48,9 @@ public class ResourceServiceImpl impleme
public Response create(final ResourceTO resourceTO) {
ResourceTO resource = resourceController.create(new DummyHTTPServletResponse(), resourceTO);
URI location = uriInfo.getAbsolutePathBuilder().path(resource.getName()).build();
- return Response.created(location).header(SyncopeConstants.REST_HEADER_ID, resource.getName()).build();
+ return Response.created(location)
+ .header(SyncopeConstants.REST_HEADER_ID, resource.getName())
+ .build();
}
@Override
Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/services/RoleServiceImpl.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/services/RoleServiceImpl.java?rev=1440323&r1=1440322&r2=1440323&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/services/RoleServiceImpl.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/services/RoleServiceImpl.java Wed Jan 30 09:55:40 2013
@@ -56,7 +56,9 @@ public class RoleServiceImpl implements
public Response create(final RoleTO roleTO) {
RoleTO created = roleController.create(new DummyHTTPServletResponse(), roleTO);
URI location = uriInfo.getAbsolutePathBuilder().path(created.getId() + "").build();
- return Response.created(location).header(SyncopeConstants.REST_HEADER_ID, created.getId()).entity(created)
+ return Response.created(location)
+ .header(SyncopeConstants.REST_HEADER_ID, created.getId())
+ .entity(created)
.build();
}
Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/services/SchemaServiceImpl.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/services/SchemaServiceImpl.java?rev=1440323&r1=1440322&r2=1440323&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/services/SchemaServiceImpl.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/services/SchemaServiceImpl.java Wed Jan 30 09:55:40 2013
@@ -76,7 +76,9 @@ public class SchemaServiceImpl implement
throw new BadRequestException();
}
URI location = uriInfo.getAbsolutePathBuilder().path(response.getName()).build();
- return Response.created(location).header(SyncopeConstants.REST_HEADER_ID, response.getName()).build();
+ return Response.created(location)
+ .header(SyncopeConstants.REST_HEADER_ID, response.getName())
+ .build();
}
@Override
Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/services/UserRequestServiceImpl.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/services/UserRequestServiceImpl.java?rev=1440323&r1=1440322&r2=1440323&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/services/UserRequestServiceImpl.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/services/UserRequestServiceImpl.java Wed Jan 30 09:55:40 2013
@@ -24,6 +24,7 @@ import java.util.List;
import javax.ws.rs.core.Response;
import javax.ws.rs.core.UriInfo;
+import org.apache.syncope.common.SyncopeConstants;
import org.apache.syncope.common.services.UserRequestService;
import org.apache.syncope.common.to.UserRequestTO;
import org.apache.syncope.common.types.UserRequestType;
@@ -61,7 +62,9 @@ public class UserRequestServiceImpl impl
userRequestController.delete(userRequestTO.getUserId());
}
URI location = uriInfo.getAbsolutePathBuilder().path("" + outUserRequestTO.getId()).build();
- return Response.created(location).entity(outUserRequestTO.getId()).build();
+ return Response.created(location)
+ .header(SyncopeConstants.REST_HEADER_ID, outUserRequestTO.getId())
+ .build();
}
@Override
Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/services/UserServiceImpl.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/services/UserServiceImpl.java?rev=1440323&r1=1440322&r2=1440323&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/services/UserServiceImpl.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/services/UserServiceImpl.java Wed Jan 30 09:55:40 2013
@@ -79,7 +79,9 @@ public class UserServiceImpl implements
public Response create(final UserTO userTO) {
UserTO created = userController.createInternal(userTO);
URI location = uriInfo.getAbsolutePathBuilder().path(created.getId() + "").build();
- return Response.created(location).header(SyncopeConstants.REST_HEADER_ID, created.getId()).entity(created)
+ return Response.created(location)
+ .header(SyncopeConstants.REST_HEADER_ID, created.getId())
+ .entity(created)
.build();
}
Modified: syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/AbstractTest.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/AbstractTest.java?rev=1440323&r1=1440322&r2=1440323&view=diff
==============================================================================
--- syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/AbstractTest.java (original)
+++ syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/AbstractTest.java Wed Jan 30 09:55:40 2013
@@ -47,6 +47,7 @@ import org.apache.syncope.client.service
import org.apache.syncope.client.services.proxy.ResourceServiceProxy;
import org.apache.syncope.client.services.proxy.RoleServiceProxy;
import org.apache.syncope.client.services.proxy.SchemaServiceProxy;
+import org.apache.syncope.client.services.proxy.SpringServiceProxy;
import org.apache.syncope.client.services.proxy.TaskServiceProxy;
import org.apache.syncope.client.services.proxy.UserRequestServiceProxy;
import org.apache.syncope.client.services.proxy.UserServiceProxy;
@@ -147,21 +148,21 @@ public abstract class AbstractTest {
protected UserRequestService userRequestService;
protected PolicyService policyService;
-
+
@Autowired
protected RestClientExceptionMapper clientExceptionMapper;
@Before
public void setup() throws Exception {
- if (!enabledCXF) {
- resetRestTemplate();
- } else {
+ if (enabledCXF) {
setupCXFServices();
+ } else {
+ resetRestTemplate();
}
}
// BEGIN Spring MVC Initialization
- protected void setupRestTemplate(final String uid, final String pwd) {
+ private void setupRestTemplate(final String uid, final String pwd) {
PreemptiveAuthHttpRequestFactory requestFactory = ((PreemptiveAuthHttpRequestFactory) restTemplate
.getRequestFactory());
@@ -169,7 +170,7 @@ public abstract class AbstractTest {
requestFactory.getAuthScope(), new UsernamePasswordCredentials(uid, pwd));
}
- protected RestTemplate anonymousRestTemplate() {
+ private RestTemplate getAnonymousRestTemplate() {
RestTemplate template = new RestTemplate(httpClientFactory);
List<HttpMessageConverter<?>> converters = new ArrayList<HttpMessageConverter<?>>();
converters.add(mappingJacksonHttpMessageConverter);
@@ -254,6 +255,26 @@ public abstract class AbstractTest {
// END CXF Initialization
+ @SuppressWarnings("unchecked")
+ public <T> T setupCredentials(final T proxy, final String username, final String password) {
+ if (proxy instanceof SpringServiceProxy) {
+ SpringServiceProxy service = (SpringServiceProxy) proxy;
+ if (username == null && password == null) {
+ service.setRestTemplate(getAnonymousRestTemplate());
+ } else {
+ setupRestTemplate(username, password);
+ }
+ return proxy;
+ } else {
+ restClientFactory.setUsername(username);
+ restClientFactory.setPassword(password);
+ restClientFactory.setServiceClass(proxy.getClass());
+ T serviceProxy = (T) restClientFactory.create(proxy.getClass());
+ setupContentType(WebClient.client(serviceProxy));
+ return serviceProxy;
+ }
+ }
+
public <T> T getObject(final Response response, final Class<T> type, final Object serviceProxy) {
assertNotNull(response);
assertNotNull(response.getLocation());
@@ -301,13 +322,13 @@ public abstract class AbstractTest {
attr.addValueToBeAdded(valueToBeAdded);
return attr;
}
-
- protected UserTO createUser(UserTO userTO) {
+
+ protected UserTO createUser(final UserTO userTO) {
Response response = userService.create(userTO);
return response.readEntity(UserTO.class);
}
- protected void assertCreated(Response response) {
+ protected void assertCreated(final Response response) {
if (response.getStatus() != HttpStatus.SC_CREATED) {
StringBuilder builder = new StringBuilder();
MultivaluedMap<String, Object> headers = response.getHeaders();
@@ -316,7 +337,8 @@ public abstract class AbstractTest {
builder.append(key + ":" + headers.getFirst(key) + ",");
}
builder.append(")");
- throw new RuntimeException("Error on create. Status is : " + response.getStatus() + " with headers " + builder.toString());
+ throw new RuntimeException("Error on create. Status is : " + response.getStatus() + " with headers "
+ + builder.toString());
}
}
}
Modified: syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/AuthenticationTestITCase.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/AuthenticationTestITCase.java?rev=1440323&r1=1440322&r2=1440323&view=diff
==============================================================================
--- syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/AuthenticationTestITCase.java (original)
+++ syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/AuthenticationTestITCase.java Wed Jan 30 09:55:40 2013
@@ -33,6 +33,7 @@ import javax.ws.rs.core.Response;
import org.apache.syncope.common.search.AttributeCond;
import org.apache.syncope.common.search.NodeCond;
import org.apache.syncope.common.services.SchemaService;
+import org.apache.syncope.common.services.UserService;
import org.apache.syncope.common.to.AttributeTO;
import org.apache.syncope.common.to.EntitlementTO;
import org.apache.syncope.common.to.MembershipTO;
@@ -52,7 +53,7 @@ import org.springframework.web.client.Ht
@FixMethodOrder(MethodSorters.JVM)
public class AuthenticationTestITCase extends AbstractTest {
-
+
@Test
public void testAdminEntitlements() {
// 1. as anonymous, read all available entitlements
@@ -109,15 +110,15 @@ public class AuthenticationTestITCase ex
assertNotNull(schemaTO);
// 4. read the schema created above (as user) - success
- super.setupRestTemplate(userTO.getUsername(), "password123");
+ SchemaService schemaService2 = setupCredentials(schemaService, userTO.getUsername(), "password123");
- schemaTO = schemaService.read(AttributableType.USER, SchemaService.SchemaType.NORMAL, "authTestSchema");
+ schemaTO = schemaService2.read(AttributableType.USER, SchemaService.SchemaType.NORMAL, "authTestSchema");
assertNotNull(schemaTO);
// 5. update the schema create above (as user) - failure
HttpClientErrorException exception = null;
try {
- schemaService.update(AttributableType.ROLE, SchemaService.SchemaType.NORMAL, schemaTO.getName(), schemaTO);
+ schemaService2.update(AttributableType.ROLE, SchemaService.SchemaType.NORMAL, schemaTO.getName(), schemaTO);
} catch (HttpClientErrorException e) {
exception = e;
}
@@ -149,20 +150,19 @@ public class AuthenticationTestITCase ex
userTO = createUser(userTO);
assertNotNull(userTO);
- super.setupRestTemplate(userTO.getUsername(), "password123");
+ UserService userService2 = setupCredentials(userService, userTO.getUsername(), "password123");
- UserTO readUserTO = userService.read(1L);
+ UserTO readUserTO = userService2.read(1L);
assertNotNull(readUserTO);
- super.setupRestTemplate("user2", "password");
+ UserService userService3 = setupCredentials(userService, "user2", ADMIN_PWD);
SyncopeClientException exception = null;
try {
- userService.read(1L);
+ userService3.read(1L);
fail();
} catch (SyncopeClientCompositeErrorException e) {
- exception = e
- .getException(SyncopeClientExceptionType.UnauthorizedRole);
+ exception = e.getException(SyncopeClientExceptionType.UnauthorizedRole);
}
assertNotNull(exception);
@@ -185,14 +185,13 @@ public class AuthenticationTestITCase ex
userTO = createUser(userTO);
assertNotNull(userTO);
- super.setupRestTemplate(userTO.getUsername(), "password123");
+ UserService userService2 = setupCredentials(userService, userTO.getUsername(), "password123");
- AttributeCond isNullCond = new AttributeCond(
- AttributeCond.Type.ISNOTNULL);
+ AttributeCond isNullCond = new AttributeCond(AttributeCond.Type.ISNOTNULL);
isNullCond.setSchema("loginDate");
NodeCond searchCondition = NodeCond.getLeafCond(isNullCond);
- List<UserTO> matchedUsers = userService.search(searchCondition);
+ List<UserTO> matchedUsers = userService2.search(searchCondition);
assertNotNull(matchedUsers);
assertFalse(matchedUsers.isEmpty());
Set<Long> userIds = new HashSet<Long>(matchedUsers.size());
@@ -201,9 +200,9 @@ public class AuthenticationTestITCase ex
}
assertTrue(userIds.contains(1L));
- super.setupRestTemplate("user2", "password");
+ UserService userService3 = setupCredentials(userService, "user2", "password");
- matchedUsers = userService.search(searchCondition);
+ matchedUsers = userService3.search(searchCondition);
assertNotNull(matchedUsers);
@@ -233,9 +232,9 @@ public class AuthenticationTestITCase ex
userTO = createUser(userTO);
assertNotNull(userTO);
- super.setupRestTemplate(userTO.getUsername(), "password123");
+ UserService userService2 = setupCredentials(userService, userTO.getUsername(), "password123");
- UserTO readUserTO = userService.read(userTO.getId());
+ UserTO readUserTO = userService2.read(userTO.getId());
assertNotNull(readUserTO);
assertNotNull(readUserTO.getFailedLogins());
@@ -243,12 +242,12 @@ public class AuthenticationTestITCase ex
// authentications failed ...
- super.setupRestTemplate(userTO.getUsername(), "wrongpwd1");
+ UserService userService3 = setupCredentials(userService, userTO.getUsername(), "wrongpwd1");
Throwable t = null;
try {
- userService.read(userTO.getId());
+ userService3.read(userTO.getId());
assertNotNull(readUserTO);
} catch (Exception e) {
t = e;
@@ -258,7 +257,7 @@ public class AuthenticationTestITCase ex
t = null;
try {
- userService.read(userTO.getId());
+ userService3.read(userTO.getId());
assertNotNull(readUserTO);
} catch (Exception e) {
t = e;
@@ -272,9 +271,9 @@ public class AuthenticationTestITCase ex
assertNotNull(readUserTO.getFailedLogins());
assertEquals(Integer.valueOf(2), readUserTO.getFailedLogins());
- super.setupRestTemplate(userTO.getUsername(), "password123");
+ UserService userService4 = setupCredentials(userService, userTO.getUsername(), "password123");
- readUserTO = userService.read(userTO.getId());
+ readUserTO = userService4.read(userTO.getId());
assertNotNull(readUserTO);
assertNotNull(readUserTO.getFailedLogins());
assertEquals(Integer.valueOf(0), readUserTO.getFailedLogins());
@@ -295,9 +294,9 @@ public class AuthenticationTestITCase ex
userTO = createUser(userTO);
assertNotNull(userTO);
- super.setupRestTemplate(userTO.getUsername(), "password123");
+ UserService userService2 = setupCredentials(userService, userTO.getUsername(), "password123");
- userTO = userService.read(userTO.getId());
+ userTO = userService2.read(userTO.getId());
assertNotNull(userTO);
assertNotNull(userTO.getFailedLogins());
@@ -305,12 +304,12 @@ public class AuthenticationTestITCase ex
// authentications failed ...
- super.setupRestTemplate(userTO.getUsername(), "wrongpwd1");
+ UserService userService3 = setupCredentials(userService, userTO.getUsername(), "wrongpwd1");
Throwable t = null;
try {
- userService.read(userTO.getId());
+ userService3.read(userTO.getId());
fail();
} catch (Exception e) {
t = e;
@@ -320,7 +319,7 @@ public class AuthenticationTestITCase ex
t = null;
try {
- userService.read(userTO.getId());
+ userService3.read(userTO.getId());
} catch (Exception e) {
t = e;
}
@@ -329,7 +328,7 @@ public class AuthenticationTestITCase ex
t = null;
try {
- userService.read(userTO.getId());
+ userService3.read(userTO.getId());
} catch (Exception e) {
t = e;
}
@@ -347,10 +346,11 @@ public class AuthenticationTestITCase ex
assertEquals(Integer.valueOf(3), userTO.getFailedLogins());
// last authentication before suspension
- super.setupRestTemplate(userTO.getUsername(), "wrongpwd1");
+ // TODO remove after CXF migration is complete
+ userService3 = setupCredentials(userService, userTO.getUsername(), "wrongpwd1");
try {
- userService.read(userTO.getId());
+ userService3.read(userTO.getId());
} catch (Exception e) {
t = e;
}
@@ -369,11 +369,11 @@ public class AuthenticationTestITCase ex
assertEquals("suspended", userTO.getStatus());
// check for authentication
-
- super.setupRestTemplate(userTO.getUsername(), "password123");
+ // TODO remove after CXF migration is complete
+ userService2 = setupCredentials(userService, userTO.getUsername(), "password123");
try {
- userService.read(userTO.getId());
+ userService2.read(userTO.getId());
assertNotNull(userTO);
} catch (Exception e) {
t = e;
@@ -390,9 +390,10 @@ public class AuthenticationTestITCase ex
assertNotNull(userTO);
assertEquals("active", userTO.getStatus());
- super.setupRestTemplate(userTO.getUsername(), "password123");
+ // TODO remove after CXF migration is complete
+ userService2 = setupCredentials(userService, userTO.getUsername(), "password123");
- userTO = userService.read(userTO.getId());
+ userTO = userService2.read(userTO.getId());
assertNotNull(userTO);
assertEquals(Integer.valueOf(0), userTO.getFailedLogins());
@@ -430,7 +431,7 @@ public class AuthenticationTestITCase ex
role1Admin = createUser(role1Admin);
assertNotNull(role1Admin);
- super.setupRestTemplate(role1Admin.getUsername(), "password");
+ UserService userService2 = setupCredentials(userService, role1Admin.getUsername(), "password");
// User with role 1, created by user with child role created above
UserTO role1User = UserTestITCase.getUniqueSampleTO("syncope48user@apache.org");
@@ -438,10 +439,9 @@ public class AuthenticationTestITCase ex
membershipTO.setRoleId(1L);
role1User.addMembership(membershipTO);
- role1User = createUser(role1User);
+ response = userService2.create(role1User);
+ assertNotNull(response);
+ role1User = response.readEntity(UserTO.class);
assertNotNull(role1User);
-
- // reset admin credentials for restTemplate
- super.resetRestTemplate();
}
}
Modified: syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/RoleTestITCase.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/RoleTestITCase.java?rev=1440323&r1=1440322&r2=1440323&view=diff
==============================================================================
--- syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/RoleTestITCase.java (original)
+++ syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/RoleTestITCase.java Wed Jan 30 09:55:40 2013
@@ -31,6 +31,7 @@ import java.util.List;
import javax.ws.rs.core.Response;
import org.apache.syncope.common.mod.RoleMod;
+import org.apache.syncope.common.services.RoleService;
import org.apache.syncope.common.to.ConnObjectTO;
import org.apache.syncope.common.to.RoleTO;
import org.apache.syncope.common.to.UserTO;
@@ -196,24 +197,21 @@ public class RoleTestITCase extends Abst
assertTrue(userTO.getMembershipMap().containsKey(1L));
assertFalse(userTO.getMembershipMap().containsKey(3L));
- super.setupRestTemplate("user1", "password");
+ RoleService roleService2 = setupCredentials(roleService, "user1", ADMIN_PWD);
SyncopeClientException exception = null;
try {
- roleService.selfRead(3L);
+ roleService2.selfRead(3L);
fail();
} catch (SyncopeClientCompositeErrorException e) {
exception = e.getException(SyncopeClientExceptionType.UnauthorizedRole);
}
assertNotNull(exception);
- RoleTO roleTO = roleService.selfRead(1L);
+ RoleTO roleTO = roleService2.selfRead(1L);
assertNotNull(roleTO);
assertNotNull(roleTO.getAttributes());
assertFalse(roleTO.getAttributes().isEmpty());
-
- // restore admin authentication
- super.resetRestTemplate();
}
@Test
@@ -305,10 +303,10 @@ public class RoleTestITCase extends Abst
roleMod.setName("Managing Director");
// 3. try to update as user3, not owner of role 7 - fail
- setupRestTemplate("user2", "password");
+ RoleService roleService2 = setupCredentials(roleService, "user2", ADMIN_PWD);
try {
- roleService.update(roleMod.getId(), roleMod);
+ roleService2.update(roleMod.getId(), roleMod);
fail();
} catch (HttpStatusCodeException e) {
assertEquals(HttpStatus.FORBIDDEN, e.getStatusCode());
@@ -316,13 +314,10 @@ public class RoleTestITCase extends Abst
// 4. update as user5, owner of role 7 because owner of role 6 with
// inheritance - success
- super.setupRestTemplate("user5", ADMIN_PWD);
+ RoleService roleService3 = setupCredentials(roleService, "user5", ADMIN_PWD);
- roleTO = roleService.update(roleMod.getId(), roleMod);
+ roleTO = roleService3.update(roleMod.getId(), roleMod);
assertEquals("Managing Director", roleTO.getName());
-
- // restore admin authentication
- super.resetRestTemplate();
}
/**
Modified: syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/UserRequestTestITCase.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/UserRequestTestITCase.java?rev=1440323&r1=1440322&r2=1440323&view=diff
==============================================================================
--- syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/UserRequestTestITCase.java (original)
+++ syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/UserRequestTestITCase.java Wed Jan 30 09:55:40 2013
@@ -31,12 +31,12 @@ import javax.ws.rs.core.Response;
import org.apache.syncope.common.mod.UserMod;
import org.apache.syncope.common.search.AttributeCond;
import org.apache.syncope.common.search.NodeCond;
+import org.apache.syncope.common.services.UserRequestService;
import org.apache.syncope.common.to.ConfigurationTO;
import org.apache.syncope.common.to.UserRequestTO;
import org.apache.syncope.common.to.UserTO;
import org.apache.syncope.common.types.SyncopeClientExceptionType;
import org.apache.syncope.common.validation.SyncopeClientCompositeErrorException;
-import org.apache.syncope.common.validation.SyncopeClientException;
import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runners.MethodSorters;
@@ -62,14 +62,12 @@ public class UserRequestTestITCase exten
UserTO userTO = UserTestITCase.getUniqueSampleTO("selfcreate@syncope.apache.org");
// 2. get unauthorized when trying to request user create
- SyncopeClientException exception = null;
try {
createUserRequest(new UserRequestTO(userTO));
fail();
} catch (SyncopeClientCompositeErrorException e) {
- exception = e.getException(SyncopeClientExceptionType.UnauthorizedRole);
+ assertNotNull(e.getException(SyncopeClientExceptionType.UnauthorizedRole));
}
- assertNotNull(exception);
// 3. set create request allowed
configurationTO.setValue("true");
@@ -81,12 +79,12 @@ public class UserRequestTestITCase exten
assertNotNull(configurationTO);
// 4. as anonymous, request user create works
- UserRequestTO request = anonymousRestTemplate().postForObject(BASE_URL + "user/request/create",
- userTO, UserRequestTO.class);
- assertNotNull(request);
+ UserRequestService userRequestService2 = setupCredentials(userRequestService, null, null);
+ response = userRequestService2.create(new UserRequestTO(userTO));
+ UserRequestTO request = getObject(response, UserRequestTO.class, userRequestService2);
// 5. switch back to admin
- super.resetRestTemplate();
+ super.resetRestTemplate(); // TODO remove after CXF migration is complete
// 6. try to find user
AttributeCond attrCond = new AttributeCond(AttributeCond.Type.EQ);
@@ -115,26 +113,27 @@ public class UserRequestTestITCase exten
userMod.setPassword(initialPassword);
// 2. try to request user update as admin: failure
- SyncopeClientException exception = null;
try {
createUserRequest(new UserRequestTO(userMod));
fail();
} catch (SyncopeClientCompositeErrorException e) {
- exception = e.getException(SyncopeClientExceptionType.UnauthorizedRole);
+ assertNotNull(e.getException(SyncopeClientExceptionType.UnauthorizedRole));
}
- assertNotNull(exception);
// 3. auth as user just created
- super.setupRestTemplate(userTO.getUsername(), initialPassword);
+ UserRequestService userRequestService2 = setupCredentials(userRequestService, userTO.getUsername(),
+ initialPassword);
// 4. update with same password: not matching password policy
- exception = null;
try {
- createUserRequest(new UserRequestTO(userMod));
+ Response response = userRequestService2.create(new UserRequestTO(userMod));
+ if (response.getStatus() != org.apache.http.HttpStatus.SC_CREATED) {
+ throw (RuntimeException) clientExceptionMapper.fromResponse(response);
+ }
+ fail();
} catch (SyncopeClientCompositeErrorException scce) {
- exception = scce.getException(SyncopeClientExceptionType.InvalidSyncopeUser);
+ assertNotNull(scce.getException(SyncopeClientExceptionType.InvalidSyncopeUser));
}
- assertNotNull(exception);
// 5. now request user update works
userMod.setPassword("new" + initialPassword);
@@ -167,20 +166,21 @@ public class UserRequestTestITCase exten
assertNotNull(userTO);
// 2. try to request user delete as admin: failure
- SyncopeClientException exception = null;
try {
createUserRequest(new UserRequestTO(userTO.getId()));
fail();
} catch (SyncopeClientCompositeErrorException e) {
- exception = e.getException(SyncopeClientExceptionType.UnauthorizedRole);
+ assertNotNull(e.getException(SyncopeClientExceptionType.UnauthorizedRole));
}
- assertNotNull(exception);
// 3. auth as user just created
- super.setupRestTemplate(userTO.getUsername(), initialPassword);
+ UserRequestService userRequestService2 = setupCredentials(userRequestService, userTO.getUsername(),
+ initialPassword);
// 4. now request user delete works
- createUserRequest(new UserRequestTO(userTO.getId()));
+ Response response = userRequestService2.create(new UserRequestTO(userTO.getId()));
+ assertNotNull(response);
+ assertEquals(org.apache.http.HttpStatus.SC_CREATED, response.getStatus());
// 5. switch back to admin
super.resetRestTemplate();
@@ -201,11 +201,11 @@ public class UserRequestTestITCase exten
}
}
- private Long createUserRequest(UserRequestTO userRequestTO) throws RuntimeException {
+ private UserRequestTO createUserRequest(final UserRequestTO userRequestTO) {
Response response = userRequestService.create(userRequestTO);
if (response.getStatus() != org.apache.http.HttpStatus.SC_CREATED) {
- throw (RuntimeException)clientExceptionMapper.fromResponse(response);
+ throw (RuntimeException) clientExceptionMapper.fromResponse(response);
}
- return (Long) response.readEntity(Long.class);
+ return getObject(response, UserRequestTO.class, userRequestService);
}
}
Modified: syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/UserTestITCase.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/UserTestITCase.java?rev=1440323&r1=1440322&r2=1440323&view=diff
==============================================================================
--- syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/UserTestITCase.java (original)
+++ syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/UserTestITCase.java Wed Jan 30 09:55:40 2013
@@ -38,6 +38,7 @@ import javax.ws.rs.core.Response;
import org.apache.syncope.common.mod.AttributeMod;
import org.apache.syncope.common.mod.MembershipMod;
import org.apache.syncope.common.mod.UserMod;
+import org.apache.syncope.common.services.UserService;
import org.apache.syncope.common.to.AttributeTO;
import org.apache.syncope.common.to.ConfigurationTO;
import org.apache.syncope.common.to.ConnObjectTO;
@@ -106,16 +107,16 @@ public class UserTestITCase extends Abst
@Test
public void selfRead() {
- super.setupRestTemplate("user1", ADMIN_PWD);
+ UserService userService2 = setupCredentials(userService, "user1", ADMIN_PWD);
try {
- userService.read(1L);
+ userService2.read(1L);
fail();
} catch (HttpClientErrorException e) {
assertEquals(HttpStatus.FORBIDDEN, e.getStatusCode());
}
- UserTO userTO = userService.readSelf();
+ UserTO userTO = userService2.readSelf();
assertEquals("user1", userTO.getUsername());
}
@@ -585,20 +586,19 @@ public class UserTestITCase extends Abst
assertNull(form.getOwner());
// 3. claim task from user1, not in role 7 (designated for approval in workflow definition): fail
- super.setupRestTemplate("user1", ADMIN_PWD);
+ UserService userService2 = setupCredentials(userService, "user1", ADMIN_PWD);
- SyncopeClientException sce = null;
try {
- userService.claimForm(form.getTaskId());
+ userService2.claimForm(form.getTaskId());
+ fail();
} catch (SyncopeClientCompositeErrorException scce) {
- sce = scce.getException(SyncopeClientExceptionType.Workflow);
+ assertNotNull(scce.getException(SyncopeClientExceptionType.Workflow));
}
- assertNotNull(sce);
// 4. claim task from user4, in role 7
- super.setupRestTemplate("user4", ADMIN_PWD);
+ UserService userService3 = setupCredentials(userService, "user4", ADMIN_PWD);
- form = userService.claimForm(form.getTaskId());
+ form = userService3.claimForm(form.getTaskId());
assertNotNull(form);
assertNotNull(form.getTaskId());
assertNotNull(form.getOwner());
@@ -608,7 +608,7 @@ public class UserTestITCase extends Abst
props.get("approve").setValue(Boolean.FALSE.toString());
props.get("rejectReason").setValue("I don't like him.");
form.setProperties(props.values());
- userTO = userService.submitForm(form);
+ userTO = userService3.submitForm(form);
assertNotNull(userTO);
assertEquals("rejected", userTO.getStatus());
@@ -1931,7 +1931,7 @@ public class UserTestITCase extends Abst
assertNotNull(userTO.getPropagationStatusTOs());
assertEquals(1, userTO.getPropagationStatusTOs().size());
assertEquals("resource-testdb", userTO.getPropagationStatusTOs().iterator().next().getResource());
-
+
// 3b. verify that password hasn't changed on Syncope
assertEquals(pwdOnSyncope, userTO.getPassword());