code: public synchronized boolean removeStateListener(@Nonnull EndpointStateListener<VALUE_TYPE, ARG_TYPE> listener) throws IllegalArgumentException {
          checkListenerNonNull(listener);
          return fieldStateListeners.remove(listener);
      }
docs: Remove field state listener
  
  @param listener
  @return true if listeners collection was modified by this operation,
  false otherwise
  @throws IllegalArgumentException if listener is null