public String getDependentName() { return dependentId.getName(); }
public String getCapabilityName() { return id.getName(); }
public String getDependentName() { return dependentId.getName(); }
public String getCapabilityName() { return id.getName(); }
private Step findCapabilityRemovalStep(CapabilityId missingRequirement, boolean ignoreContext, CapabilityResolutionContext resolutionContext) { Step result = removedCapabilities.get(missingRequirement); if (result == null && !ignoreContext) { String missingName = missingRequirement.getName(); for (Map.Entry<CapabilityId, Step> entry : removedCapabilities.entrySet()) { CapabilityId removedId = entry.getKey(); if (missingName.equals(removedId.getName()) && removedId.getScope().canSatisfyRequirement(missingRequirement.getName(), missingRequirement.getScope(), resolutionContext)) { result = entry.getValue(); break; } } } return result; }
private Step findCapabilityRemovalStep(CapabilityId missingRequirement, boolean ignoreContext, CapabilityResolutionContext resolutionContext) { Step result = removedCapabilities.get(missingRequirement); if (result == null && !ignoreContext) { String missingName = missingRequirement.getName(); for (Map.Entry<CapabilityId, Step> entry : removedCapabilities.entrySet()) { CapabilityId removedId = entry.getKey(); if (missingName.equals(removedId.getName()) && removedId.getScope().canSatisfyRequirement(missingRequirement.getName(), missingRequirement.getScope(), resolutionContext)) { result = entry.getValue(); break; } } } return result; }
private CapabilityRegistration<?> getCapability(CapabilityId capabilityId) { CapabilityRegistration<?> capReg = this.capabilityRegistry.getCapability(capabilityId); if (capReg == null) { for (CapabilityRegistration<?> reg : this.capabilityRegistry.getPossibleCapabilities()) { if (reg.getCapabilityId().getName().equals(capabilityId.getName())) { capReg = reg; break; } } } return capReg; }
private CapabilityRegistration<?> getCapability(CapabilityId capabilityId) { CapabilityRegistration<?> capReg = this.capabilityRegistry.getCapability(capabilityId); if (capReg == null) { for (CapabilityRegistration<?> reg : this.capabilityRegistry.getPossibleCapabilities()) { if (reg.getCapabilityId().getName().equals(capabilityId.getName())) { capReg = reg; break; } } } return capReg; }
readLock.lock(); try { final CapabilityId capId = capabilityId.getScope() == CapabilityScope.GLOBAL ? capabilityId : new CapabilityId(capabilityId.getName(), CapabilityScope.GLOBAL); //possible registry is only in global scope CapabilityRegistration<?> reg = possibleCapabilities.get(capId); if (reg != null) { if (registration.getCapability().isDynamicallyNamed() && registration.getCapabilityScope().equals(capId.getScope()) && capId.getName().startsWith(registration.getCapabilityName())) { Set<RegistrationPoint> registrationPoints = registration.getRegistrationPoints(); for (RegistrationPoint registrationPoint : registrationPoints) {
readLock.lock(); try { final CapabilityId capId = capabilityId.getScope() == CapabilityScope.GLOBAL ? capabilityId : new CapabilityId(capabilityId.getName(), CapabilityScope.GLOBAL); //possible registry is only in global scope CapabilityRegistration<?> reg = possibleCapabilities.get(capId); if (reg != null) { if (registration.getCapability().isDynamicallyNamed() && registration.getCapabilityScope().equals(capId.getScope()) && capId.getName().startsWith(registration.getCapabilityName())) { Set<RegistrationPoint> registrationPoints = registration.getRegistrationPoints(); for (RegistrationPoint registrationPoint : registrationPoints) {
/** * This must be called with the write lock held. * @param requirement the requirement */ private void registerRequirement(RuntimeRequirementRegistration requirement) { assert writeLock.isHeldByCurrentThread(); CapabilityId dependentId = requirement.getDependentId(); if (!capabilities.containsKey(dependentId)) { throw ControllerLogger.MGMT_OP_LOGGER.unknownCapabilityInContext(dependentId.getName(), dependentId.getScope().getName()); } Map<CapabilityId, Map<String, RuntimeRequirementRegistration>> requirementMap = requirement.isRuntimeOnly() ? runtimeOnlyRequirements : requirements; Map<String, RuntimeRequirementRegistration> dependents = requirementMap.get(dependentId); if (dependents == null) { dependents = new HashMap<>(); requirementMap.put(dependentId, dependents); } RuntimeRequirementRegistration existing = dependents.get(requirement.getRequiredName()); if (existing == null) { dependents.put(requirement.getRequiredName(), requirement); } else { existing.addRegistrationPoint(requirement.getOldestRegistrationPoint()); } modified = true; }
/** * This must be called with the write lock held. * @param requirement the requirement */ private void registerRequirement(RuntimeRequirementRegistration requirement) { assert writeLock.isHeldByCurrentThread(); CapabilityId dependentId = requirement.getDependentId(); if (!capabilities.containsKey(dependentId)) { throw ControllerLogger.MGMT_OP_LOGGER.unknownCapabilityInContext(dependentId.getName(), dependentId.getScope().getName()); } Map<CapabilityId, Map<String, RuntimeRequirementRegistration>> requirementMap = requirement.isRuntimeOnly() ? runtimeOnlyRequirements : requirements; Map<String, RuntimeRequirementRegistration> dependents = requirementMap.get(dependentId); if (dependents == null) { dependents = new HashMap<>(); requirementMap.put(dependentId, dependents); } RuntimeRequirementRegistration existing = dependents.get(requirement.getRequiredName()); if (existing == null) { dependents.put(requirement.getRequiredName(), requirement); } else { existing.addRegistrationPoint(requirement.getOldestRegistrationPoint()); } modified = true; }
String dependentName = dependentId.getName(); CapabilityScope dependentContext = dependentId.getScope(); Set<CapabilityScope> consistentSet = consistentSets == null ? null : consistentSets.get(dependentContext);
String dependentName = dependentId.getName(); CapabilityScope dependentContext = dependentId.getScope(); Set<CapabilityScope> consistentSet = consistentSets == null ? null : consistentSets.get(dependentContext);
|| !currentRegistration.getCapability().isAllowMultipleRegistrations() || !currentRegistration.addRegistrationPoint(rp)) { throw ControllerLogger.MGMT_OP_LOGGER.capabilityAlreadyRegisteredInContext(capabilityId.getName(), rp, capabilityId.getScope().getName(), currentRegistration.getRegistrationPoints()); registerRequirement(new RuntimeRequirementRegistration(req, capabilityId.getName(), capabilityId.getScope(), rp));
|| !currentRegistration.getCapability().isAllowMultipleRegistrations() || !currentRegistration.addRegistrationPoint(rp)) { throw ControllerLogger.MGMT_OP_LOGGER.capabilityAlreadyRegisteredInContext(capabilityId.getName(), rp, capabilityId.getScope().getName(), currentRegistration.getRegistrationPoints()); registerRequirement(new RuntimeRequirementRegistration(req, capabilityId.getName(), capabilityId.getScope(), rp));
throw ControllerLogger.MGMT_OP_LOGGER.capabilityAlreadyRegisteredInContext(capabilityId.getName(), capabilityId.getScope().getName());
throw ControllerLogger.MGMT_OP_LOGGER.capabilityAlreadyRegisteredInContext(capabilityId.getName(), capabilityId.getScope().getName());