Skip to main content
summaryrefslogtreecommitdiffstats
blob: 6f8b2d2fcfede673908420fc233f9eb2db0ef2fd (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package org.eclipse.osee.ote.master.rest.client.internal;

import java.net.URI;
import java.util.concurrent.Callable;
import javax.ws.rs.core.MediaType;
import org.eclipse.osee.jaxrs.client.WebClientProvider;
import org.eclipse.osee.ote.master.rest.client.OTEMasterServerResult;
import org.eclipse.osee.ote.master.rest.model.OTEServer;
import com.sun.jersey.api.client.WebResource;

public class RemoveServer implements Callable<OTEMasterServerResult> {

   private final WebClientProvider webClientProvider;
   private final OTEServer server;
   private final URI uri;

   public RemoveServer(WebClientProvider webClientProvider, URI uri, OTEServer server) {
      this.webClientProvider = webClientProvider;
      this.uri = uri;
      this.server = server;
   }

   @Override
   public OTEMasterServerResult call() throws Exception {
      OTEMasterServerResult result = new OTEMasterServerResult();
      try {
         WebResource resource = webClientProvider.createResource(uri);
         resource.path(OTEMasterServerImpl.CONTEXT_NAME).path(OTEMasterServerImpl.CONTEXT_SERVERS).accept(
            MediaType.APPLICATION_XML).delete(server);
      } catch (Throwable th) {
         result.setSuccess(false);
         result.setThrowable(th);
      }
      return result;
   }

}

Back to the top