code: protected void doPut(String path) throws ClientException {
          this.readLock.lock();
          try {
              ClientResponse response = this.getResourceWrapper()
                      .rewritten(path, HttpMethod.PUT)
                      .put(ClientResponse.class);
              errorIfStatusNotEqualTo(response, ClientResponse.Status.OK, ClientResponse.Status.NO_CONTENT);
              response.close();
          } catch (ClientHandlerException ex) {
              throw new ClientException(ClientResponse.Status.INTERNAL_SERVER_ERROR, ex.getMessage());
          } finally {
              this.readLock.unlock();
          }
      }
docs: Updates the resource specified by the path, for situations where the
  nature of the update is completely specified by the path alone.
  
  @param path the path to the resource. Cannot be <code>null</code>.
  
  @throws ClientException if a status code other than 204 (No Content) and
  200 (OK) is returned.