class ContainerAttribute {

  public boolean remove(T key, ContainerID value) {
    Preconditions.checkNotNull(key);
    Preconditions.checkNotNull(value);

    if (attributeMap.containsKey(key)) {
      if (!attributeMap.get(key).remove(value)) {
        if (LOG.isDebugEnabled()) {
          LOG.debug("ContainerID: {} does not exist in the set pointed by " +
              "key:{}", value, key);
        }
        return false;
      }
      return true;
    } else {
      if (LOG.isDebugEnabled()) {
        LOG.debug("key: {} does not exist in the attributeMap", key);
      }
      return false;
    }
  }

  public  ContainerAttribute(Map<T, NavigableSet<ContainerID>> attributeMap);
  public  ContainerAttribute();

}