public enum ToggleableFeature implements Feature {
- @Label ("VLAN Tagging")
- VLAN_TAGGING,
-
- @Label ("Annotations")
- ANNOTATIONS,
-
@Label("Archive Item")
ARCHIVE_ITEM,
import org.openecomp.core.utilities.orchestration.OnboardingTypesEnum;
import org.openecomp.core.validation.util.MessageContainerUtil;
import org.openecomp.sdc.common.errors.CoreException;
-import org.openecomp.sdc.common.togglz.ToggleableFeature;
import org.openecomp.sdc.common.utils.SdcCommon;
import org.openecomp.sdc.datatypes.error.ErrorLevel;
import org.openecomp.sdc.datatypes.error.ErrorMessage;
* @return true if the resource is of sub interface type and false otherwise
*/
public static boolean isSubInterfaceResource(Resource resource, TranslationContext context) {
- if (!ToggleableFeature.VLAN_TAGGING.isActive()) {
- //Remove this once feature is stable and moved to production
- return false;
- }
//Check if resource group is a nested resource
if (!isNestedResource(resource)) {
return false;
}
}
- public static boolean shouldAnnotationsToBeAdded() {
- return ToggleableFeature.ANNOTATIONS.isActive();
- }
-
private static void addCapabilityToSubMapping(String templateName,
Map.Entry<String, CapabilityDefinition> capabilityNodeEntry,
Map<String, CapabilityDefinition> nodeTypeCapabilitiesDefinition,
import org.onap.sdc.tosca.datatypes.model.SubstitutionMapping;
import org.onap.sdc.tosca.datatypes.model.heatextend.PropertyTypeExt;
import org.openecomp.core.utilities.CommonMethods;
-import org.openecomp.sdc.common.togglz.ToggleableFeature;
import org.openecomp.sdc.datatypes.configuration.ImplementationConfiguration;
import org.openecomp.sdc.heat.services.HeatConstants;
import org.openecomp.sdc.tosca.datatypes.ToscaFunctions;
private void addPortSubInterfaceIndicatorProperty(Map<String, Object> properties,
EntityConsolidationData entityConsolidationData) {
- if (ToggleableFeature.VLAN_TAGGING.isActive()) {
properties.put(SUB_INTERFACE_INDICATOR_PROPERTY,
((PortTemplateConsolidationData) entityConsolidationData).isPortBoundToSubInterface());
- }
}
private void handleNodeTemplateProperties(UnifiedCompositionTo unifiedCompositionTo,
import java.util.Map;
import org.onap.sdc.tosca.datatypes.model.NodeTemplate;
-import org.openecomp.sdc.common.togglz.ToggleableFeature;
import org.openecomp.sdc.heat.services.HeatConstants;
import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
import org.openecomp.sdc.tosca.services.DataModelUtil;
protected boolean isEssentialRequirementsValid(TranslateTo translateTo) {
if (contrailV2VirtualMachineInterfaceHelper
.isVlanSubInterfaceResource(translateTo.getResource())) {
- return ToggleableFeature.VLAN_TAGGING.isActive() && contrailV2VirtualMachineInterfaceHelper
+ return contrailV2VirtualMachineInterfaceHelper
.isVlanSubInterfaceConnectedToPortIndirectly(translateTo);
}
return true;
}
private static boolean isAnnotationRequired(TranslationContext context, String heatFileName){
- return HeatToToscaUtil.shouldAnnotationsToBeAdded() && !isNestedServiceTemplate(context, heatFileName);
+ return !isNestedServiceTemplate(context, heatFileName);
}
private static boolean isNestedServiceTemplate(TranslationContext context, String heatFileName) {
import org.openecomp.core.validation.ErrorMessageCode;
import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
import org.openecomp.core.validation.types.GlobalValidationContext;
-import org.openecomp.sdc.common.togglz.ToggleableFeature;
import org.openecomp.sdc.datatypes.error.ErrorLevel;
import org.openecomp.sdc.heat.datatypes.model.Resource;
import org.openecomp.sdc.heat.services.HeatConstants;
@Override
public void validate(String fileName, Map.Entry<String, Resource> resourceEntry,
GlobalValidationContext globalContext, ValidationContext validationContext) {
- if (ToggleableFeature.VLAN_TAGGING.isActive()) {
HeatResourceValidationContext heatResourceValidationContext =
(HeatResourceValidationContext) validationContext;
final ValidityStatus status = calculateValidityStatus(resourceEntry.getValue());
throw new IllegalArgumentException("Received a value for which no handling is " +
"available " + status);
}
- }
}
private ValidityStatus calculateValidityStatus(Resource resource) {
import org.openecomp.core.validation.ErrorMessageCode;
import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
import org.openecomp.core.validation.types.GlobalValidationContext;
-import org.openecomp.sdc.common.togglz.ToggleableFeature;
import org.openecomp.sdc.datatypes.error.ErrorLevel;
import org.openecomp.sdc.heat.datatypes.DefinedHeatParameterTypes;
import org.openecomp.sdc.heat.datatypes.model.Resource;
@Override
public void validate(String fileName, Map.Entry<String, Resource> resourceEntry,
GlobalValidationContext globalContext, ValidationContext validationContext) {
- if (ToggleableFeature.VLAN_TAGGING.isActive()) {
NamingConventionValidationContext namingConventionValidationContext =
(NamingConventionValidationContext) validationContext;
Optional<Object> tagPropertyValue = getVlanTagPropertyValue(resourceEntry.getValue());
validateNamingConvention(fileName, resourceEntry, globalContext
);
}
- }
}
-
private void validateModeledByResourceGroup(String fileName,
Map.Entry<String, Resource> resourceEntry,
GlobalValidationContext globalContext,