/** * Copyright 2008-2016 Qualogy Solutions B.V. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.qualogy.qafe.gwt.server.event.assembler; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import com.qualogy.qafe.bind.core.application.ApplicationContext; import com.qualogy.qafe.bind.presentation.event.EventItem; import com.qualogy.qafe.bind.presentation.event.function.SetValue; import com.qualogy.qafe.bind.presentation.event.function.SetValueMapping; import com.qualogy.qafe.gwt.client.vo.data.EventDataGVO; import com.qualogy.qafe.gwt.client.vo.functions.BuiltInFunctionGVO; import com.qualogy.qafe.gwt.client.vo.functions.DataContainerGVO; import com.qualogy.qafe.gwt.client.vo.functions.SetValueGVO; import com.qualogy.qafe.web.util.SessionContainer; @Deprecated public class SetValueBuiltInRenderer extends AbstractEventRenderer implements EventAssembler { public BuiltInFunctionGVO convert(EventItem eventItem, EventDataGVO eventData,ApplicationContext context, SessionContainer sc) { BuiltInFunctionGVO bif = null; if (eventItem instanceof SetValue) { SetValueGVO setValue = new SetValueGVO(); bif = setValue; bif.setUuid(eventData.getUuid()); SetValue in = (SetValue) eventItem; String componentId = in.getComponentId(); if(in.getComponentId() != null && in.getComponentId().length() > 0 && in.getComponentId().contains("[")) { // Then set value is to be done on a datagrid cell String[] inputRef = in.getComponentId().split("[.]"); componentId = inputRef[0].toString().substring(0, inputRef[0].indexOf("[")); setValue.setComponentId(in.getComponentId()); } else { setValue.setComponentId(parseComponent(in.getComponentId(),eventData)); } setValue.setBuiltInComponentGVO(getBuiltInComponentGVO(componentId, eventData)); if (in.getParameter().getName()!=null && in.getParameter().getName().length()>0){ setValue.setNamedComponentId(parseComponent(in.getParameter().getName(),eventData)); } if (in.getGroup()!=null && in.getGroup().length()>0){ setValue.setGroup(parseComponent(in.getGroup(),eventData));// + (eventData.getParent() == null ? "" : "|" + eventData.getParent()) + "|" + eventData.getUuid()); } Object returnedObject = in.getDataObject(); setValue.setMapping(convertMapping(in)); setValue.setDataContainer(createContainer(returnedObject)); setValue.setAction(in.getAction()); } return bif; } public DataContainerGVO createContainer(Object object) { return DataContainerGVO.create(object); } private Map<String,String> convertMapping(SetValue in) { HashMap<String,String> mapping = null; if (in.getMapping() != null) { mapping = new HashMap<String,String>(17); Iterator<SetValueMapping> itr = in.getMapping().iterator(); while (itr.hasNext()) { SetValueMapping setValueMapping = (SetValueMapping) itr.next(); mapping.put(setValueMapping.getKey(), setValueMapping.getValue()); } } return mapping; } }