예제 #1
0
  @SuppressWarnings({"unchecked", "rawtypes"})
  @Override
  public void addRole(final Project project, final String role) {
    ConfigGroup thisProjectConfig = findProjectConfig(project.getRootPath());

    if (thisProjectConfig == null) {
      thisProjectConfig =
          configurationFactory.newConfigGroup(
              ConfigType.PROJECT,
              project.getRootPath().toURI(),
              "Project '" + project.getProjectName() + "' configuration");
      thisProjectConfig.addConfigItem(
          configurationFactory.newConfigItem("security:roles", new ArrayList<String>()));
      configurationService.addConfiguration(thisProjectConfig);
    }

    if (thisProjectConfig != null) {
      final ConfigItem<List> roles = thisProjectConfig.getConfigItem("security:roles");
      roles.getValue().add(role);

      configurationService.updateConfiguration(thisProjectConfig);

    } else {
      throw new IllegalArgumentException("Project " + project.getProjectName() + " not found");
    }
  }
예제 #2
0
  @SuppressWarnings({"unchecked", "rawtypes"})
  @Override
  public void removeRole(final Project project, final String role) {
    final ConfigGroup thisProjectConfig = findProjectConfig(project.getRootPath());

    if (thisProjectConfig != null) {
      final ConfigItem<List> roles = thisProjectConfig.getConfigItem("security:roles");
      roles.getValue().remove(role);

      configurationService.updateConfiguration(thisProjectConfig);

    } else {
      throw new IllegalArgumentException("Project " + project.getProjectName() + " not found");
    }
  }
  @Override
  public void updateOrganizationalUnitOwner(final String name, final String owner) {
    final ConfigGroup thisGroupConfig = findGroupConfig(name);

    if (thisGroupConfig != null) {
      thisGroupConfig.setConfigItem(configurationFactory.newConfigItem("owner", owner));
      configurationService.updateConfiguration(thisGroupConfig);

      final OrganizationalUnit updatedOrganizationalUnit =
          organizationalUnitFactory.newOrganizationalUnit(thisGroupConfig);
      registeredOrganizationalUnits.put(
          updatedOrganizationalUnit.getName(), updatedOrganizationalUnit);
    } else {
      throw new IllegalArgumentException("OrganizationalUnit " + name + " not found");
    }
  }
  @SuppressWarnings({"unchecked", "rawtypes"})
  @Override
  public void removeRole(final OrganizationalUnit organizationalUnit, final String role) {
    final ConfigGroup thisGroupConfig = findGroupConfig(organizationalUnit.getName());

    if (thisGroupConfig != null) {
      final ConfigItem<List> roles = thisGroupConfig.getConfigItem("security:roles");
      roles.getValue().remove(role);

      configurationService.updateConfiguration(thisGroupConfig);

      final OrganizationalUnit updatedOrganizationalUnit =
          organizationalUnitFactory.newOrganizationalUnit(thisGroupConfig);
      registeredOrganizationalUnits.put(
          updatedOrganizationalUnit.getName(), updatedOrganizationalUnit);
    } else {
      throw new IllegalArgumentException(
          "OrganizationalUnit " + organizationalUnit.getName() + " not found");
    }
  }
  @SuppressWarnings({"unchecked", "rawtypes"})
  @Override
  public void addRepository(
      final OrganizationalUnit organizationalUnit, final Repository repository) {
    final ConfigGroup thisGroupConfig = findGroupConfig(organizationalUnit.getName());

    if (thisGroupConfig != null) {
      ConfigItem<List> repositories = thisGroupConfig.getConfigItem("repositories");
      repositories.getValue().add(repository.getAlias());

      configurationService.updateConfiguration(thisGroupConfig);

      final OrganizationalUnit updatedOrganizationalUnit =
          organizationalUnitFactory.newOrganizationalUnit(thisGroupConfig);
      registeredOrganizationalUnits.put(
          updatedOrganizationalUnit.getName(), updatedOrganizationalUnit);
    } else {
      throw new IllegalArgumentException(
          "OrganizationalUnit " + organizationalUnit.getName() + " not found");
    }
  }