public void removeConnection(CMISConnection connection) {
    if (connection == null || connection.getInternalId() == null) {
      return;
    }

    lock.writeLock().lock();
    try {
      if (connection.isShared()) {
        sharedConnections.remove(connection.getInternalId());
      } else {
        userConnections.remove(connection.getInternalId());
      }
    } finally {
      lock.writeLock().unlock();
    }
  }