public void getRemoteWorkerProviders(
      @MonitoredBy(DiscoveryServiceConstants.DS_OBJECT_NAME) DiscoveryServiceClient dsClient,
      int maxResponseSize) {
    GetRemoteWorkerProvidersRequestTO to = new GetRemoteWorkerProvidersRequestTO();

    ServiceID serviceID = serviceManager.getStubDeploymentID(dsClient).getServiceID();

    to.setClientAddress(serviceID.toString());
    to.setClientUserAtServer(serviceID.getContainerID().getUserAtServer().toString());
    to.setMyAddress(
        serviceManager
            .getObjectDeploymentID(DiscoveryServiceConstants.DS_OBJECT_NAME)
            .getServiceID()
            .toString());
    to.setMaxResponseSize(maxResponseSize);
    to.setOverloadThreshold(
        serviceManager
            .getContainerContext()
            .parseIntegerProperty(DiscoveryServiceConfiguration.PROP_OVERLOAD_THRESHOLD));
    to.setDsMaxResponse(
        serviceManager
            .getContainerContext()
            .parseIntegerProperty(DiscoveryServiceConfiguration.PROP_MAX_RESPONSE_SIZE));

    OurGridRequestControl.getInstance().execute(to, serviceManager);
  }
  public void leaveCommunity(
      @MonitoredBy(DiscoveryServiceConstants.DS_OBJECT_NAME) DiscoveryServiceClient dsClient) {
    LeaveCommunityRequestTO to = new LeaveCommunityRequestTO();

    ServiceID serviceID = serviceManager.getStubDeploymentID(dsClient).getServiceID();

    to.setClientAddress(serviceID.toString());
    to.setClientUserAtServer(serviceID.getContainerID().getUserAtServer());

    OurGridRequestControl.getInstance().execute(to, serviceManager);
  }
  @Req("REQ015")
  public void disposeWorker(ServiceID workerServiceID) {

    String brokerPublicKey = serviceManager.getSenderPublicKey();

    DisposeWorkerRequestTO to = new DisposeWorkerRequestTO();
    to.setBrokerPublicKey(brokerPublicKey);

    if (workerServiceID != null) {
      to.setWorkerAddress(workerServiceID.toString());
      to.setWorkerUserAtServer(workerServiceID.getContainerID().getUserAtServer());
      to.setWorkerPublicKey(workerServiceID.getPublicKey());
    }

    OurGridRequestControl.getInstance().execute(to, serviceManager);
  }