Search in sources :

Example 1 with ServiceFieldGroupRestRep

use of com.emc.vipr.model.catalog.ServiceFieldGroupRestRep in project coprhd-controller by CoprHD.

the class ServiceFormUtils method createAssetFieldsFromItems.

/**
 * Creates the asset fields for the container and all its children.
 *
 * @param container
 *            the service item container.
 * @param providedFields
 *            the asset fields provided by the parent, mapped by asset type.
 * @return the map of field name->AssetFieldDescriptor.
 */
private static Map<String, AssetFieldDescriptor> createAssetFieldsFromItems(Collection<? extends ServiceItemRestRep> items, Map<String, ServiceFieldRestRep> providedFields) {
    List<ServiceFieldRestRep> fields = ServiceFieldRestRep.getAssetFields(items);
    Map<String, AssetFieldDescriptor> assetFields = createAssetFields(fields, providedFields);
    // Add the container fields to the provided fields for the children
    providedFields = addFieldsByType(fields, providedFields);
    for (ServiceItemRestRep child : items) {
        if (child instanceof ServiceFieldGroupRestRep) {
            assetFields.putAll(createAssetFieldsFromItems(((ServiceFieldGroupRestRep) child).getItems(), providedFields));
        } else if (child instanceof ServiceFieldTableRestRep) {
            assetFields.putAll(createAssetFieldsFromItems(((ServiceFieldTableRestRep) child).getItems(), providedFields));
        } else if (child instanceof ServiceFieldModalRestRep) {
            assetFields.putAll(createAssetFieldsFromItems(((ServiceFieldModalRestRep) child).getItems(), providedFields));
        }
    }
    return assetFields;
}
Also used : ServiceItemRestRep(com.emc.vipr.model.catalog.ServiceItemRestRep) ServiceFieldGroupRestRep(com.emc.vipr.model.catalog.ServiceFieldGroupRestRep) ServiceFieldModalRestRep(com.emc.vipr.model.catalog.ServiceFieldModalRestRep) ServiceFieldTableRestRep(com.emc.vipr.model.catalog.ServiceFieldTableRestRep) ServiceFieldRestRep(com.emc.vipr.model.catalog.ServiceFieldRestRep)

Example 2 with ServiceFieldGroupRestRep

use of com.emc.vipr.model.catalog.ServiceFieldGroupRestRep in project coprhd-controller by CoprHD.

the class ServiceDescriptorMapper method map.

public static ServiceFieldGroupRestRep map(ServiceFieldGroup from) {
    if (from == null) {
        return null;
    }
    ServiceFieldGroupRestRep to = new ServiceFieldGroupRestRep();
    mapServiceItemCommon(to, from);
    to.setCollapsed(from.isCollapsed());
    to.setCollapsible(from.isCollapsible());
    to.getItems().addAll(map(from.getItems().values()));
    return to;
}
Also used : ServiceFieldGroupRestRep(com.emc.vipr.model.catalog.ServiceFieldGroupRestRep)

Example 3 with ServiceFieldGroupRestRep

use of com.emc.vipr.model.catalog.ServiceFieldGroupRestRep in project coprhd-controller by CoprHD.

the class ServiceDescriptorUtils method findField.

public static ServiceFieldRestRep findField(Collection<? extends ServiceItemRestRep> items, String name) {
    ServiceItemRestRep value = findItemByName(items, name);
    if (value != null && value.isField()) {
        return (ServiceFieldRestRep) value;
    }
    // Search for a nested field
    for (ServiceItemRestRep item : items) {
        if (item instanceof ServiceFieldGroupRestRep) {
            ServiceFieldGroupRestRep group = (ServiceFieldGroupRestRep) item;
            ServiceFieldRestRep field = findField(group.getItems(), name);
            if (field != null) {
                return field;
            }
        } else if (item instanceof ServiceFieldTableRestRep) {
            ServiceFieldTableRestRep table = (ServiceFieldTableRestRep) item;
            ServiceFieldRestRep field = findField(table.getItems(), name);
            if (field != null) {
                return field;
            }
        } else if (item instanceof ServiceFieldModalRestRep) {
            ServiceFieldModalRestRep modal = (ServiceFieldModalRestRep) item;
            ServiceFieldRestRep field = findField(modal.getItems(), name);
            if (field != null) {
                return field;
            }
        }
    }
    // No field found
    return null;
}
Also used : ServiceItemRestRep(com.emc.vipr.model.catalog.ServiceItemRestRep) ServiceFieldGroupRestRep(com.emc.vipr.model.catalog.ServiceFieldGroupRestRep) ServiceFieldModalRestRep(com.emc.vipr.model.catalog.ServiceFieldModalRestRep) ServiceFieldTableRestRep(com.emc.vipr.model.catalog.ServiceFieldTableRestRep) ServiceFieldRestRep(com.emc.vipr.model.catalog.ServiceFieldRestRep)

Aggregations

ServiceFieldGroupRestRep (com.emc.vipr.model.catalog.ServiceFieldGroupRestRep)3 ServiceFieldModalRestRep (com.emc.vipr.model.catalog.ServiceFieldModalRestRep)2 ServiceFieldRestRep (com.emc.vipr.model.catalog.ServiceFieldRestRep)2 ServiceFieldTableRestRep (com.emc.vipr.model.catalog.ServiceFieldTableRestRep)2 ServiceItemRestRep (com.emc.vipr.model.catalog.ServiceItemRestRep)2