/** {@inheritDoc} */ public void configure(ConfigurationContext context) { Assure.notNull("context", context); // get all properties describing a service Iterable<Pair<String, String>> serviceProperties = this._ant4EclipseConfiguration.getAllProperties(PROPERTY_PREFIX); // Iterate over all service descriptions found for (Pair<String, String> serviceProperty : serviceProperties) { // instantiate new service instance Object serviceInstance = Utilities.newInstance(serviceProperty.getSecond()); // register new service context.registerService(serviceInstance, serviceProperty.getFirst()); } }
/** Loads the configured RoleIdentifiers */ protected void init() { // get all properties that defines a ProjectRoleIdentifier Ant4EclipseConfiguration config = ServiceRegistryAccess.instance().getService(Ant4EclipseConfiguration.class); Iterable<Pair<String, String>> entries = config.getAllProperties(PREFIX_VALIDATOR); List<ProjectValidator> validators = new ArrayList<ProjectValidator>(); // Instantiate all ProjectRoleIdentifiers for (Pair<String, String> types : entries) { // we're not interested in the key of a project validator. only the classname (value of the // entry) is relevant ProjectValidator projectvalidator = Utilities.newInstance(types.getSecond(), types.getFirst()); A4ELogging.trace("Register ProjectValidator '%s'", projectvalidator); validators.add(projectvalidator); } this._validators = validators.toArray(new ProjectValidator[validators.size()]); }