public InternalDirectoryConfiguration toInternalConfiguration(Directory directory) {
    InternalDirectoryConfiguration configuration = new InternalDirectoryConfiguration();
    configuration.setDirectoryId(directory.getId() != null ? directory.getId() : 0);
    configuration.setActive(directory.isActive());
    configuration.setName(directory.getName());

    Map<String, String> attributes = directory.getAttributes();
    String useNestedGroups = attributes.get(DirectoryImpl.ATTRIBUTE_KEY_USE_NESTED_GROUPS);
    if (useNestedGroups != null) {
      configuration.setNestedGroupsEnabled(Boolean.valueOf(useNestedGroups));
    } else {
      configuration.setNestedGroupsEnabled(false);
    }

    return configuration;
  }