/** * @since 3.2 */ public Builder setProperty(String key, boolean value) { return setProperty(key, String.valueOf(value)); }
public ResourceTypesRule setAllQualifiers(String... qualifiers) { Set<ResourceType> resourceTypes = new HashSet<>(); for (String qualifier : qualifiers) { resourceTypes.add(ResourceType.builder(qualifier).setProperty("deletable", true).build()); } allResourceTypes = ImmutableSet.copyOf(resourceTypes); return this; }
public ResourceTypesRule setRootQualifiers(String... qualifiers) { Set<ResourceType> resourceTypes = new LinkedHashSet<>(); for (String qualifier : qualifiers) { resourceTypes.add(ResourceType.builder(qualifier).setProperty("deletable", true).build()); } rootResourceTypes = ImmutableSet.copyOf(resourceTypes); return this; }
.setProperty("deletable", true) .setProperty("supportsGlobalDashboards", true) .setProperty("modifiable_history", true) .setProperty("hasRolePolicy", true) .setProperty(UPDATABLE_KEY, true) .setProperty(SUPPORTS_MEASURE_FILTERS, true) .setProperty("comparable", true) .setProperty(CONFIGURABLE, true) .build()) .addType(ResourceType.builder(Qualifiers.MODULE) .setProperty(UPDATABLE_KEY, true) .setProperty(SUPPORTS_MEASURE_FILTERS, true) .setProperty(CONFIGURABLE, true) .build()) .addType(ResourceType.builder(Qualifiers.DIRECTORY) .setProperty(SUPPORTS_MEASURE_FILTERS, true) .build()) .addType(ResourceType.builder(Qualifiers.PACKAGE) .addType(ResourceType.builder(Qualifiers.FILE) .hasSourceCode() .setProperty(SUPPORTS_MEASURE_FILTERS, true) .build()) .addType(ResourceType.builder(Qualifiers.CLASS) .addType(ResourceType.builder(Qualifiers.UNIT_TEST_FILE) .hasSourceCode() .setProperty(SUPPORTS_MEASURE_FILTERS, true) .build())
public static ResourceTypeTree get() { return ResourceTypeTree.builder() .addType(ResourceType.builder(Qualifiers.PROJECT) .setProperty("deletable", true) .setProperty("modifiable_history", true) .setProperty("hasRolePolicy", true) .setProperty(UPDATABLE_KEY, true) .setProperty("comparable", true) .setProperty(CONFIGURABLE, true) .build()) .addType(ResourceType.builder(Qualifiers.MODULE) .setProperty(UPDATABLE_KEY, true) .setProperty(CONFIGURABLE, true) .build()) .addType(ResourceType.builder(Qualifiers.DIRECTORY) .build()) .addType(ResourceType.builder(Qualifiers.FILE) .hasSourceCode() .build()) .addType(ResourceType.builder(Qualifiers.UNIT_TEST_FILE) .hasSourceCode() .build()) .addRelations(Qualifiers.PROJECT, Qualifiers.MODULE) .addRelations(Qualifiers.MODULE, Qualifiers.DIRECTORY) .addRelations(Qualifiers.DIRECTORY, Qualifiers.FILE, Qualifiers.UNIT_TEST_FILE) .build(); } }
/** * @since 3.2 */ public Builder setProperty(String key, boolean value) { return setProperty(key, String.valueOf(value)); }
/** * @deprecated since 3.0. Use {@link #setProperty(String, String)} with "supportsMeasureFilters" set to "true". */ @Deprecated public Builder availableForFilters() { setProperty(SUPPORTS_MEASURE_FILTERS, "true"); return this; }
/** * @since 3.2 */ public Builder setProperty(String key, boolean value) { return setProperty(key, String.valueOf(value)); }
public static ResourceTypeTree get() { return ResourceTypeTree.builder() .addType(ResourceType.builder(Qualifiers.PROJECT) .setProperty("deletable", true) .setProperty("modifiable_history", true) .setProperty("hasRolePolicy", true) .setProperty(UPDATABLE_KEY, true) .setProperty("comparable", true) .setProperty(CONFIGURABLE, true) .build()) .addType(ResourceType.builder(Qualifiers.MODULE) .setProperty(UPDATABLE_KEY, true) .setProperty(CONFIGURABLE, true) .build()) .addType(ResourceType.builder(Qualifiers.DIRECTORY) .build()) .addType(ResourceType.builder(Qualifiers.FILE) .hasSourceCode() .build()) .addType(ResourceType.builder(Qualifiers.UNIT_TEST_FILE) .hasSourceCode() .build()) .addRelations(Qualifiers.PROJECT, Qualifiers.MODULE) .addRelations(Qualifiers.MODULE, Qualifiers.DIRECTORY) .addRelations(Qualifiers.DIRECTORY, Qualifiers.FILE, Qualifiers.UNIT_TEST_FILE) .build(); } }
@Test public void return_configuration_with_all_properties() { ComponentDto project = insertOrganizationAndProject(); userSession.anonymous() .addProjectPermission(UserRole.USER, project) .addProjectPermission(UserRole.ADMIN, project); ResourceType projectResourceType = ResourceType.builder(project.qualifier()) .setProperty("comparable", true) .setProperty("configurable", true) .setProperty("hasRolePolicy", true) .setProperty("modifiable_history", true) .setProperty("updatable_key", true) .setProperty("deletable", true) .build(); when(resourceTypes.get(project.qualifier())) .thenReturn(projectResourceType); init(); executeAndVerify(project.getDbKey(), "return_configuration_with_all_properties.json"); }
@Test public void shouldCreate() { ResourceType def = ResourceType.builder("qualifier") .setIconPath("/custom-icon.png") .hasSourceCode() .setProperty("supportsMeasureFilters", "true") .setProperty("anotherProperty", "foo") .build(); assertThat(def.getQualifier()).isEqualTo("qualifier"); assertThat(def.getIconPath()).isEqualTo("/custom-icon.png"); assertThat(def.hasSourceCode()).isTrue(); assertThat(def.getStringProperty("anotherProperty")).isEqualTo("foo"); }
@Test public void hasProperty() { ResourceType def = ResourceType.builder("qualifier").build(); assertThat(def.hasProperty("foo")).isFalse(); def = ResourceType.builder("qualifier").setProperty("foo", "bar").build(); assertThat(def.hasProperty("foo")).isTrue(); } }
@Test public void getBooleanProperty_is_set() { // set with boolean parameter ResourceType def = ResourceType.builder("qualifier").setProperty("test", true).build(); assertThat(def.getBooleanProperty("test")).isTrue(); def = ResourceType.builder("qualifier").setProperty("test", false).build(); assertThat(def.getBooleanProperty("test")).isFalse(); def = ResourceType.builder("qualifier").setProperty("test", "true").build(); assertThat(def.getBooleanProperty("test")).isTrue(); def = ResourceType.builder("qualifier").setProperty("test", "false").build(); assertThat(def.getBooleanProperty("test")).isFalse(); }