Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.osee.orcs.rest.client/src/org/eclipse/osee/orcs/rest/client/internal/OseeClientImpl.java')
-rw-r--r--plugins/org.eclipse.osee.orcs.rest.client/src/org/eclipse/osee/orcs/rest/client/internal/OseeClientImpl.java49
1 files changed, 20 insertions, 29 deletions
diff --git a/plugins/org.eclipse.osee.orcs.rest.client/src/org/eclipse/osee/orcs/rest/client/internal/OseeClientImpl.java b/plugins/org.eclipse.osee.orcs.rest.client/src/org/eclipse/osee/orcs/rest/client/internal/OseeClientImpl.java
index 66b6a7abc75..6832bf9095b 100644
--- a/plugins/org.eclipse.osee.orcs.rest.client/src/org/eclipse/osee/orcs/rest/client/internal/OseeClientImpl.java
+++ b/plugins/org.eclipse.osee.orcs.rest.client/src/org/eclipse/osee/orcs/rest/client/internal/OseeClientImpl.java
@@ -10,43 +10,38 @@
*******************************************************************************/
package org.eclipse.osee.orcs.rest.client.internal;
-import static org.eclipse.osee.jaxrs.client.JaxRsClientConstants.JAXRS_CLIENT_SERVER_ADDRESS;
import java.net.URI;
import java.util.ArrayList;
-import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import javax.ws.rs.client.WebTarget;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.UriBuilder;
import org.eclipse.osee.framework.core.data.IOseeBranch;
import org.eclipse.osee.framework.core.data.OseeCodeVersion;
import org.eclipse.osee.jaxrs.client.JaxRsClient;
-import org.eclipse.osee.jaxrs.client.JaxRsClientFactory;
-import org.eclipse.osee.jaxrs.client.JaxRsClientUtils;
+import org.eclipse.osee.jaxrs.client.JaxRsExceptions;
import org.eclipse.osee.orcs.rest.client.OseeClient;
import org.eclipse.osee.orcs.rest.client.QueryBuilder;
import org.eclipse.osee.orcs.rest.client.internal.search.PredicateFactory;
import org.eclipse.osee.orcs.rest.client.internal.search.PredicateFactoryImpl;
import org.eclipse.osee.orcs.rest.client.internal.search.QueryBuilderImpl;
import org.eclipse.osee.orcs.rest.client.internal.search.QueryExecutorV1;
-import org.eclipse.osee.orcs.rest.client.internal.search.QueryExecutorV1.BaseUriBuilder;
import org.eclipse.osee.orcs.rest.client.internal.search.QueryOptions;
import org.eclipse.osee.orcs.rest.model.Client;
import org.eclipse.osee.orcs.rest.model.search.artifact.Predicate;
-import com.sun.jersey.api.client.UniformInterfaceException;
-import com.sun.jersey.api.client.WebResource;
/**
* @author John Misinco
* @author Roberto E. Escobar
*/
-public class OseeClientImpl implements OseeClient, BaseUriBuilder {
+public class OseeClientImpl implements OseeClient {
private static final String OSEE_APPLICATION_SERVER = "osee.application.server";
private volatile PredicateFactory predicateFactory;
private volatile QueryExecutorV1 executor;
- private volatile JaxRsClient client;
+ private volatile WebTarget baseTarget;
public void start(Map<String, Object> properties) {
predicateFactory = new PredicateFactoryImpl();
@@ -56,24 +51,21 @@ public class OseeClientImpl implements OseeClient, BaseUriBuilder {
public void stop() {
executor = null;
- client = null;
+ baseTarget = null;
predicateFactory = null;
}
public void update(Map<String, Object> properties) {
- Map<String, Object> propsToUse = properties;
- String newServerAddress = JaxRsClientUtils.get(propsToUse, JAXRS_CLIENT_SERVER_ADDRESS, null);
- if (newServerAddress == null) {
- propsToUse = new HashMap<String, Object>(properties);
- propsToUse.put(JAXRS_CLIENT_SERVER_ADDRESS, System.getProperty(OSEE_APPLICATION_SERVER, ""));
+ JaxRsClient client = JaxRsClient.newBuilder().properties(properties).build();
+
+ String address = properties != null ? (String) properties.get(OSEE_APPLICATION_SERVER) : null;
+ if (address == null) {
+ address = System.getProperty(OSEE_APPLICATION_SERVER, "");
}
- client = JaxRsClientFactory.createClient(propsToUse);
- executor = new QueryExecutorV1(client, this);
- }
- @Override
- public UriBuilder newBuilder() {
- return UriBuilder.fromPath("orcs");
+ URI uri = UriBuilder.fromUri(address).path("orcs").build();
+ baseTarget = client.target(uri);
+ executor = new QueryExecutorV1(baseTarget);
}
@Override
@@ -86,16 +78,15 @@ public class OseeClientImpl implements OseeClient, BaseUriBuilder {
@Override
public boolean isClientVersionSupportedByApplicationServer() {
boolean result = false;
- URI uri = newBuilder().path("client").build();
- WebResource resource = client.createResource(uri);
+ WebTarget resource = baseTarget.path("client");
Client clientResult = null;
try {
- clientResult = resource.accept(MediaType.APPLICATION_XML).get(Client.class);
- if (clientResult != null) {
- result = clientResult.getSupportedVersions().contains(OseeCodeVersion.getVersion());
- }
- } catch (UniformInterfaceException ex) {
- throw client.handleException(ex);
+ clientResult = resource.request(MediaType.APPLICATION_JSON).get(Client.class);
+ } catch (Exception ex) {
+ throw JaxRsExceptions.asOseeException(ex);
+ }
+ if (clientResult != null) {
+ result = clientResult.getSupportedVersions().contains(OseeCodeVersion.getVersion());
}
return result;
}

Back to the top