private static void addRepresentation(OperationDefinition od, StringBuilder bld) { bld.append(od.getName()); addRepresentation(od.getResultsConfigurationDefinition(), bld); addRepresentation(od.getParametersConfigurationDefinition(), bld); }
if (def.equals(nDef)) { def.setDescription(nDef.getDescription()); def.setDisplayName(nDef.getDisplayName()); def.setParametersConfigurationDefinition(nDef.getParametersConfigurationDefinition()); def.setResourceVersionRange(nDef.getResourceVersionRange()); def.setResultsConfigurationDefinition(nDef.getResultsConfigurationDefinition()); def.setTimeout(nDef.getTimeout());
public OperationDefinition(int id, String name, String resourceVersionRange, String description, Integer timeout, String displayName) { this(name, resourceVersionRange, description); setId(id); setTimeout(timeout); setDisplayName(displayName); }
/** * Return the parameter definition for the operation with the name passed * @param operationName Name of the operation to look for * @return A configuration definition or null on failure */ ConfigurationDefinition getParameterDefinitionsForOperation(String operationName) { ResourceType type = context.getResourceType(); Set<OperationDefinition> operationDefinitions = type.getOperationDefinitions(); for (OperationDefinition definition : operationDefinitions) { if (definition.getName().equals(operationName)) { return definition.getParametersConfigurationDefinition(); } } return null; }
Set<OperationDefinition> opDefs = rt.getOperationDefinitions(); for (OperationDefinition def : opDefs) { System.out.println(def.getName() + " : " + def.getDescription()); ConfigurationDefinition params = def.getParametersConfigurationDefinition(); if (params != null && params.getPropertyDefinitions() != null && !params.getPropertyDefinitions().isEmpty()) {
public static OperationDefinition parseOperationDescriptor(OperationDescriptor operationDescriptor) throws InvalidPluginDescriptorException { String name = operationDescriptor.getName(); OperationDefinition operationDefinition = new OperationDefinition(operationDescriptor.getName(), // TODO display name "", ///operationDescriptor.getVersion().getMatch(), // TODO build the version embedded object operationDescriptor.getDescription()); operationDefinition.setParametersConfigurationDefinition(ConfigurationMetadataParser.parse(operationDescriptor .getName(), operationDescriptor.getParameters())); operationDefinition.setResultsConfigurationDefinition(ConfigurationMetadataParser.parse(operationDescriptor .getName(), operationDescriptor.getResults())); operationDefinition.setTimeout(operationDescriptor.getTimeout()); String displayName = operationDescriptor.getDisplayName(); if ((displayName == null) || displayName.equals("")) { displayName = StringUtils.deCamelCase(name); } operationDefinition.setDisplayName(displayName); return operationDefinition; } }
if (result != null) { if (this.operationDefinition != null) { if (this.operationDefinition.getResultsConfigurationDefinition() != null) { .getResultsConfigurationDefinition()); log.error("Plugin error: Operation [" + this.operationDefinition.getName() + "] is defined as returning no results, but it returned non-null results: " + result.toString(true));
if (operationDefinition != null && operationDefinition.getParametersConfigurationDefinition() != null && parameterConfig != null) { ConfigurationUtility.normalizeConfiguration(parameterConfig, operationDefinition .getParametersConfigurationDefinition());
.getDefinition().getParametersConfigurationDefinition()); .getDefinition().getResultsConfigurationDefinition()), ResourceClientProxy.simpleName(key), params, new javassist.CtClass[0], customClass);
putToCache(def.getId(),OperationDefinition.class,def); OperationDefinitionRest odr = new OperationDefinitionRest(); odr.setId(def.getId()); odr.setName(def.getName()); uriBuilder.path("/operation/definition/{id}"); uriBuilder.queryParam("resourceId",resourceId); Link createLink = new Link("create",uriBuilder.build(def.getId()).toString()); odr.addLink(createLink);
private void putDisplayName(JobDataMap jobDataMap, int resourceTypeId, String operationName) { try { OperationDefinition operationDefintion = getOperationDefinitionByResourceTypeAndName(resourceTypeId, operationName, false); jobDataMap.put(OperationJob.DATAMAP_STRING_OPERATION_DISPLAY_NAME, operationDefintion.getDisplayName()); } catch (OperationDefinitionNotFoundException odnfe) { jobDataMap.put(OperationJob.DATAMAP_STRING_OPERATION_DISPLAY_NAME, operationName); } }
@Summary(index = 1) public String getDescription() { return this.definition.getDescription(); }
if ((operationDefinition != null) && (operationDefinition.getTimeout() != null)) { return operationDefinition.getTimeout().longValue() * 1000L;
private OperationDefinition validateOperationNameAndParameters(ResourceType resourceType, String operationName, Configuration parameters) { Set<OperationDefinition> operationDefinitions = resourceType.getOperationDefinitions(); OperationDefinition matchingOperationDefinition = null; for (OperationDefinition operationDefinition : operationDefinitions) { if (operationDefinition.getName().equals(operationName)) { matchingOperationDefinition = operationDefinition; break; } } if (matchingOperationDefinition == null) { throw new IllegalArgumentException("[" + operationName + "] is not a valid operation name for Resources of type [" + resourceType.getName() + "]."); } ConfigurationDefinition parametersDefinition = matchingOperationDefinition .getParametersConfigurationDefinition(); List<String> errors = ConfigurationUtility.validateConfiguration(parameters, parametersDefinition); if (!errors.isEmpty()) { throw new IllegalArgumentException("Parameters for [" + operationName + "] on Resource of type [" + resourceType.getName() + "] are not valid: " + errors); } return matchingOperationDefinition; }
public static OperationDefinition getOperationDefinition(ResourceType type, String operationName) { for (OperationDefinition operationDefinition : type.getOperationDefinitions()) { if (operationDefinition.getName().equals(operationName)) { return operationDefinition; } } return null; }
/** * Copies the parameters of an OperationDefinition into to an object that can be * returned to a REST-client, so that this knows which fields are to be filled in, * of which type they are and which ones are required * @param def OperationsDefinition to "copy" * @param definitionRest The definition to fill in */ private void copyParamsForDefinition(OperationDefinition def, OperationDefinitionRest definitionRest) { ConfigurationDefinition cd = def.getParametersConfigurationDefinition(); if (cd==null) { return; } for (Map.Entry<String,PropertyDefinition> entry : cd.getPropertyDefinitions().entrySet()) { PropertyDefinition pd = entry.getValue(); if (pd instanceof PropertyDefinitionSimple) { PropertyDefinitionSimple pds = (PropertyDefinitionSimple) pd; SimplePropDef prop = new SimplePropDef(); prop.setName(pds.getName()); prop.setRequired(pds.isRequired()); prop.setType(pds.getType()); prop.setDefaultValue(pds.getDefaultValue()); definitionRest.addParam(prop); } log.debug("copyParams: " + pd.getName() + " not yet supported"); } }
@Summary(index = 0) public String getName() { return simpleName(this.definition.getDisplayName()); }
timeout = operationDefinition.getTimeout();