Package com.sogou.qadev.service.cynthia.bean.impl

Source Code of com.sogou.qadev.service.cynthia.bean.impl.TemplateImpl

package com.sogou.qadev.service.cynthia.bean.impl;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Set;

import org.w3c.dom.Document;
import org.w3c.dom.Node;

import com.sogou.qadev.service.cynthia.bean.Field;
import com.sogou.qadev.service.cynthia.bean.Field.DataType;
import com.sogou.qadev.service.cynthia.bean.Field.Type;
import com.sogou.qadev.service.cynthia.bean.FieldColumn;
import com.sogou.qadev.service.cynthia.bean.FieldRow;
import com.sogou.qadev.service.cynthia.bean.Option;
import com.sogou.qadev.service.cynthia.bean.Option.Forbidden;
import com.sogou.qadev.service.cynthia.bean.Template;
import com.sogou.qadev.service.cynthia.bean.UUID;
import com.sogou.qadev.service.cynthia.dao.DataAccessSessionMySQL;
import com.sogou.qadev.service.cynthia.dao.FieldNameAccessSessionMySQL;
import com.sogou.qadev.service.cynthia.factory.DataAccessFactory;
import com.sohu.rd.td.util.xml.XMLUtil;

/**
* @description:template implements
* @author:liming
* @mail:liming@sogou-inc.com
* @date:2014-5-6 下午4:34:19
* @version:v1.0
*/
public class TemplateImpl implements Template
{
  private String createUser = "";
  private UUID id = null;
  private UUID templateTypeId = null;
  private UUID flowId = null;
  private Set<Field> fieldSet = new LinkedHashSet<Field>();
  private List<FieldRow> fieldRowList = new ArrayList<FieldRow>();
  private String name = null;
  private String description = null;
  private static final long serialVersionUID = -1L;

  /**
   * (non-Javadoc)
   * <p> Title:getCreateUser</p>
   * @return
   * @see com.sogou.qadev.service.cynthia.bean.Template#getCreateUser()
   */
  @Override
  public String getCreateUser(){
    return createUser;
  }
 
  /**
   * (non-Javadoc)
   * <p> Title:setCreateUser</p>
   * @param createUser
   * @see com.sogou.qadev.service.cynthia.bean.Template#setCreateUser(java.lang.String)
   */
  @Override
  public void setCreateUser(String createUser){
    this.createUser = createUser;
  }

  /**
   * <h1> Title:</h1>
   * <p> Description:(init template)</p>
   * @date:2014-5-6
   * @param doc
   * @param createUser
   */
  public TemplateImpl(Document doc,String createUser)
  {
    init(doc,createUser);
  }

  /**
   * <h1> Title:</h1>
   * <p> Description:init template from node</p>
   * @date:2014-5-6
   * @param node
   * @param createUser
   */
  public TemplateImpl(Node node,String createUser)
  {
    init(node,createUser);
  }

  /**
   * (non-Javadoc)
   * <p> Title:getFieldRowList</p>
   * @return
   * @see com.sogou.qadev.service.cynthia.bean.Template#getFieldRowList()
   */
  public List<FieldRow> getFieldRowList() {
    return fieldRowList;
  }

  /**
   * (non-Javadoc)
   * <p> Title:setFieldRowList</p>
   * @param fieldRowList
   * @see com.sogou.qadev.service.cynthia.bean.Template#setFieldRowList(java.util.List)
   */
  public void setFieldRowList(List<FieldRow> fieldRowList) {
    this.fieldRowList = fieldRowList;
  }

  /**
   * @description:init field from field node
   * @date:2014-5-6 下午4:35:54
   * @version:v1.0
   * @param fieldNode
   * @return
   */
  protected Field initFieldNode(Node fieldNode)
  {
    Field field = null;
    try
    {
      String fieldIdStr = XMLUtil.getSingleNode(fieldNode, "id").getTextContent();
      UUID fieldId = DataAccessFactory.getInstance().createUUID(fieldIdStr);

      String typeStr = XMLUtil.getSingleNode(fieldNode, "type").getTextContent();
      Type type = Type.valueOf(typeStr);

      DataType dataType = null;
      String dataTypeStr = XMLUtil.getSingleNode(fieldNode, "dataType").getTextContent();
      if (dataTypeStr.length() > 0)
        dataType = DataType.valueOf(dataTypeStr);

      field = new FieldImpl(fieldId, id, type, dataType);

      String fieldName = XMLUtil.getSingleNode(fieldNode, "name").getTextContent();
      field.setName(fieldName);

      String fieldDescription = XMLUtil.getSingleNode(fieldNode, "description").getTextContent();
      if (fieldDescription.length() > 0)
        field.setDescription(fieldDescription);

      String fieldTip = XMLUtil.getSingleNodeTextContent(fieldNode, "fieldTip");
      if(fieldTip!=null)
        field.setFieldTip(fieldTip);

      String fieldSize = XMLUtil.getSingleNodeTextContent(fieldNode, "fieldSize");
      if(fieldSize!=null)
        field.setFieldSize(fieldSize);

      String defaultValue = XMLUtil.getSingleNode(fieldNode, "defaultValue").getTextContent();
      if (defaultValue.length() > 0)
        field.setDefaultValue(defaultValue);

      String controlFieldIdStr = XMLUtil.getSingleNode(fieldNode, "controlFieldId").getTextContent();
      if (controlFieldIdStr.length() > 0)
        field.setControlFieldId(DataAccessFactory.getInstance().createUUID(controlFieldIdStr));


      //////////////////////////////////////////////////////////////////////////////////////////////////////////////
      try {
        Node controlHiddenFieldIdNode = XMLUtil.getSingleNode(fieldNode, "controlHiddenFieldId");
        String controlHiddenFieldIdStr = "";
        if (controlHiddenFieldIdNode != null) {
          controlHiddenFieldIdStr = controlHiddenFieldIdNode.getTextContent();
        }
        if (controlHiddenFieldIdStr.length() > 0) {
          field.setControlHiddenFieldId(DataAccessFactory.getInstance().createUUID(controlHiddenFieldIdStr));
        }

        Set<UUID> controlHiddenFieldsSet = new LinkedHashSet<UUID>();
        List<Node> controlHiddenFieldsList = XMLUtil.getNodes(fieldNode, "controlHiddenFields/controlHiddenField");
        if (controlHiddenFieldsList != null && controlHiddenFieldsList.size() > 0) {
          for (Node controlHiddenFieldNode : controlHiddenFieldsList) {
            UUID controlHiddenFieldId = DataAccessFactory.getInstance().createUUID(controlHiddenFieldNode.getTextContent());
            controlHiddenFieldsSet.add(controlHiddenFieldId);
          }
          field.setControlHiddenFieldsIds(controlHiddenFieldsSet);
        }


        Set<UUID> controlHiddenStatesSet = new LinkedHashSet<UUID>();
        List<Node> controlHiddenStatesList = XMLUtil.getNodes(fieldNode, "controlHiddenStates/controlHiddenState");
        if(controlHiddenStatesList != null && controlHiddenStatesList.size() > 0 ){
          for (Node controlHiddenStateNode : controlHiddenStatesList) {
            UUID controlHiddenStateId = DataAccessFactory.getInstance().createUUID(controlHiddenStateNode.getTextContent());
            controlHiddenStatesSet.add(controlHiddenStateId);
          }
          field.setControlHiddenStatesIds(controlHiddenStatesSet);
        }
      } catch (Exception e) {
        e.printStackTrace();
        System.err.println("init 表单出错");
      }
      //////////////////////////////////////////////////////////////////////////////////////////////////////////////


      Set<Option> optionSet = new LinkedHashSet<Option>();

      List<Node> optionNodeList = XMLUtil.getNodes(fieldNode, "options/option");
      for (Node optionNode : optionNodeList)
      {
        String optionIdStr = XMLUtil.getSingleNode(optionNode, "id").getTextContent();
        UUID optionId = DataAccessFactory.getInstance().createUUID(optionIdStr);

        OptionImpl optionImpl = new OptionImpl(optionId, fieldId);

        String optionName = XMLUtil.getSingleNode(optionNode, "name").getTextContent();
        optionImpl.setName(optionName);

        String optionDescription = XMLUtil.getSingleNode(optionNode, "description").getTextContent();
        if (optionDescription.length() > 0)
          optionImpl.setDescription(optionDescription);

        String controlOptionIdStr = XMLUtil.getSingleNode(optionNode, "controlOptionId").getTextContent();
        if (controlOptionIdStr.length() > 0)
          optionImpl.setControlOptionId(DataAccessFactory.getInstance().createUUID(controlOptionIdStr));

        String forbiddenStr = XMLUtil.getSingleNode(optionNode, "forbidden").getTextContent();
        Forbidden forbidden = Forbidden.valueOf(forbiddenStr);
        optionImpl.setForbidden(forbidden);

        String indexOrderStr = XMLUtil.getSingleNode(optionNode, "indexOrder").getTextContent();
        int indexOrder = Integer.parseInt(indexOrderStr);
        optionImpl.setIndexOrder(indexOrder);

        optionSet.add(optionImpl);
      }

      field.setOptions(optionSet);

      Set<UUID> controlOptionIdSet = new LinkedHashSet<UUID>();

      List<Node> controlOptionIdNodeList = XMLUtil.getNodes(fieldNode, "controlOptionIds/controlOptionId");
      for (Node controlOptionIdNode : controlOptionIdNodeList)
      {
        UUID controlOptionId = DataAccessFactory.getInstance().createUUID(controlOptionIdNode.getTextContent());
        controlOptionIdSet.add(controlOptionId);
      }

      field.setControlOptionIds(controlOptionIdSet);

      Set<String> controlRoleIdSet = new LinkedHashSet<String>();

      List<Node> controlRoleIdNodeList = XMLUtil.getNodes(fieldNode, "controlRoleIds/controlRoleId");
      for (Node controlRoleIdNode : controlRoleIdNodeList)
      {
        controlRoleIdSet.add(controlRoleIdNode.getTextContent());
      }

      field.setControlRoleIds(controlRoleIdSet);

      Set<UUID> actionIdSet = new LinkedHashSet<UUID>();

      Set<String> controlActionIdSet = new LinkedHashSet<String>();

      List<Node> controlActionIdNodeList = XMLUtil.getNodes(fieldNode, "controlActionIds/controlActionId");
      for (Node controlActionIdNode : controlActionIdNodeList)
      {
        actionIdSet.add(DataAccessFactory.getInstance().createUUID(controlActionIdNode.getTextContent().split("\\_")[0]));
        controlActionIdSet.add(controlActionIdNode.getTextContent());
      }

      field.setControlActionIds(controlActionIdSet);

      List<Node> actionIdNodeList = XMLUtil.getNodes(fieldNode, "actionIds/actionId");
      for (Node actionIdNode : actionIdNodeList)
        actionIdSet.add(DataAccessFactory.getInstance().createUUID(actionIdNode.getTextContent()));
      field.setActionIds(actionIdSet);

    }catch(Exception e)
    {
      e.printStackTrace();
    }
    return field;

  }

  /**
   * @description:init new template xml from node
   * @date:2014-5-6 下午4:36:46
   * @version:v1.0
   * @param node
   */
  protected void initTemplateXml(Node node)
  {
    try {
      org.w3c.dom.Node templateNode = XMLUtil.getSingleNode(node, "template");
      String idStr = XMLUtil.getSingleNode(templateNode, "id").getTextContent();
      UUID id = DataAccessFactory.getInstance().createUUID(idStr);
      String templateTypeIdStr = XMLUtil.getSingleNode(templateNode, "templateTypeId").getTextContent();
      UUID templateTypeId = DataAccessFactory.getInstance().createUUID(templateTypeIdStr);

      String name = XMLUtil.getSingleNode(templateNode, "name").getTextContent();

      this.id = id;
      this.templateTypeId = templateTypeId;
      this.name = name;
      this.description = XMLUtil.getSingleNodeTextContent(templateNode, "description");

      String flowIdStr = XMLUtil.getSingleNode(templateNode, "flowId").getTextContent();
      this.flowId = DataAccessFactory.getInstance().createUUID(flowIdStr);

      List<Node> rowNodes = XMLUtil.getNodes(templateNode, "layout/rows/row");
      for(Node rowNode : rowNodes)
      {
        List<Node> columnNodes = XMLUtil.getNodes(rowNode, "column");
        FieldRow fieldRow = new FieldRow();
        for(Node columnNode : columnNodes)
        {
          List<Node> fieldNodes = XMLUtil.getNodes(columnNode, "field");
          FieldColumn fieldColumn = new FieldColumn();
          for(Node fieldNode : fieldNodes)
          {
            Field tempField = initFieldNode(fieldNode);
            fieldColumn.addField(tempField);
            this.fieldSet.add(tempField);
          }
          fieldRow.addColumn(fieldColumn);
        }

        fieldRowList.add(fieldRow);
      }
    }catch(Exception e)
    {
      e.printStackTrace();
    }
  }

  /**
   * @description:init template from node
   * @date:2014-5-6 下午4:37:27
   * @version:v1.0
   * @param node
   * @param createUser
   */
  protected void init(Node node,String createUser)
  {
    try {
      this.createUser = createUser;
      initTemplateXml(node);
    }catch(Exception e)
    {
      e.printStackTrace();
    }
  }

  /**
   * <h1> Title:</h1>
   * <p> Description:</p>
   * @date:2014-5-6
   * @param id
   * @param templateTypeId
   */
  public TemplateImpl(UUID id, UUID templateTypeId)
  {
    this.id = id;
    this.templateTypeId = templateTypeId;
  }

  /**
   * (non-Javadoc)
   * <p> Title:clone</p>
   * @return
   * @see java.lang.Object#clone()
   */
  public Template clone()
  {
    TemplateImpl templateImpl = new TemplateImpl(this.id, this.templateTypeId);

    templateImpl.flowId = this.flowId;
    templateImpl.name = this.name;
    templateImpl.description = this.description;

    templateImpl.fieldRowList = new ArrayList<FieldRow>();
    for(FieldRow fieldRow : fieldRowList)
    {
      FieldRow newFieldRow = new FieldRow();
      for(FieldColumn fieldColumn : fieldRow.getFieldColumns())
      {
        FieldColumn newFieldColumn = new FieldColumn();
        for(Field field : fieldColumn.getFields())
        {
          Field newField = field.clone();
          newFieldColumn.addField(newField);
          templateImpl.fieldSet.add(newField);
        }
        newFieldRow.addColumn(newFieldColumn);
      }
      templateImpl.fieldRowList.add(newFieldRow);
    }

    return templateImpl;
  }

  /**
   * (non-Javadoc)
   * <p> Title:getDescription</p>
   * @return
   * @see com.sogou.qadev.service.cynthia.bean.Template#getDescription()
   */
  public String getDescription()
  {
    return this.description;
  }

  /**
   * (non-Javadoc)
   * <p> Title:getFlowId</p>
   * @return
   * @see com.sogou.qadev.service.cynthia.bean.Template#getFlowId()
   */
  public UUID getFlowId()
  {
    return this.flowId;
  }

  /**
   * (non-Javadoc)
   * <p> Title:getName</p>
   * @return
   * @see com.sogou.qadev.service.cynthia.bean.Template#getName()
   */
  public String getName()
  {
    return this.name;
  }

  /**
   * (non-Javadoc)
   * <p> Title:getTemplateTypeId</p>
   * @return
   * @see com.sogou.qadev.service.cynthia.bean.Template#getTemplateTypeId()
   */
  public UUID getTemplateTypeId()
  {
    return this.templateTypeId;
  }

  /**
   * (non-Javadoc)
   * <p> Title:getId</p>
   * @return
   * @see com.sogou.qadev.service.cynthia.bean.BaseType#getId()
   */
  public UUID getId()
  {
    return this.id;
  }

  /**
   * (non-Javadoc)
   * <p> Title:setName</p>
   * @param name
   * @see com.sogou.qadev.service.cynthia.bean.Template#setName(java.lang.String)
   */
  public void setName(String name)
  {
    this.name = name;
  }

  /**
   * (non-Javadoc)
   * <p> Title:setDescription</p>
   * @param description
   * @see com.sogou.qadev.service.cynthia.bean.Template#setDescription(java.lang.String)
   */
  public void setDescription(String description)
  {
    this.description = description;
  }

  /**
   * (non-Javadoc)
   * <p> Title:setFlowId</p>
   * @param id
   * @see com.sogou.qadev.service.cynthia.bean.Template#setFlowId(com.sogou.qadev.service.cynthia.bean.UUID)
   */
  public void setFlowId(UUID id)
  {
    this.flowId = id;
  }

  /**
   * (non-Javadoc)
   * <p> Title:setFields</p>
   * @param fieldSet
   * @see com.sogou.qadev.service.cynthia.bean.Template#setFields(java.util.Set)
   */
  public void setFields(Set<Field> fieldSet)
  {
    this.fieldSet = fieldSet;
  }

  /**
   * (non-Javadoc)
   * <p> Title:addField</p>
   * @param type
   * @param dataType
   * @return
   * @see com.sogou.qadev.service.cynthia.bean.Template#addField(com.sogou.qadev.service.cynthia.bean.Field.Type, com.sogou.qadev.service.cynthia.bean.Field.DataType)
   */
  public Field addField(Type type, DataType dataType)
  {
    UUID fieldId = DataAccessFactory.getInstance().newUUID("FIEL");
    Field field = new FieldImpl(fieldId, this.id, type, dataType);
    this.fieldSet.add(field);
    return field;
  }

  /**
   * (non-Javadoc)
   * <p> Title:addField</p>
   * @param field
   * @param rowIndex
   * @param columnIndex
   * @param positionIndex
   * @see com.sogou.qadev.service.cynthia.bean.Template#addField(com.sogou.qadev.service.cynthia.bean.Field, int, int, int)
   */
  public void addField(Field field, int rowIndex, int columnIndex, int positionIndex)
  {
    for(int i = 0; i < fieldRowList.size() ; i++)
    {
      if(rowIndex == i)
      {
        List<FieldColumn> fieldColumns = fieldRowList.get(i).getFieldColumns();
        for(int j = 0 ; j < fieldColumns.size() ; j++)
        {
          if(j == columnIndex)
          {
            List<Field> fields = fieldColumns.get(j).getFields();
            fields.add(positionIndex, field);
          }
        }
      }
    }
  }

  /**
   * (non-Javadoc)
   * <p> Title:moveField</p>
   * @param field
   * @param rowIndex
   * @param columnIndex
   * @param positionIndex
   * @return
   * @see com.sogou.qadev.service.cynthia.bean.Template#moveField(com.sogou.qadev.service.cynthia.bean.Field, int, int, int)
   */
  public boolean moveField(Field field,int rowIndex, int columnIndex, int positionIndex)
  {
    for(int i = 0; i < fieldRowList.size() ; i++)
    {
      List<FieldColumn> fieldColumns = fieldRowList.get(i).getFieldColumns();
      for(int j = 0 ; j < fieldColumns.size() ; j++)
      {
        List<Field> fields = fieldColumns.get(j).getFields();
        Iterator<Field> fieldsItr = fields.iterator();
        while(fieldsItr.hasNext())
        {
          Field tmpField = fieldsItr.next();
          if(tmpField.getId().equals(field.getId()))
          {
            fieldsItr.remove();
            this.addField(field, rowIndex, columnIndex, positionIndex);
            return true;
          }
        }
      }
    }

    return false;
  }

  /**
   * (non-Javadoc)
   * <p> Title:getFields</p>
   * @return
   * @see com.sogou.qadev.service.cynthia.bean.Template#getFields()
   */
  public Set<Field> getFields()
  {
    return this.fieldSet;
  }

  /**
   * (non-Javadoc)
   * <p> Title:getField</p>
   * @param name
   * @return
   * @see com.sogou.qadev.service.cynthia.bean.Template#getField(java.lang.String)
   */
  public Field getField(String name)
  {
    for (Field field : this.fieldSet)
    {
      if (field.getName().equals(name))
        return field;
    }

    return null;
  }

  /**
   * (non-Javadoc)
   * <p> Title:getField</p>
   * @param id
   * @return
   * @see com.sogou.qadev.service.cynthia.bean.Template#getField(com.sogou.qadev.service.cynthia.bean.UUID)
   */
  public Field getField(UUID id)
  {
    for (Field field : this.fieldSet)
    {
      if (field.getId().equals(id))
        return field;
    }

    return null;
  }
 
  /**
   * (non-Javadoc)
   * <p> Title:removeField</p>
   * @param fieldId
   * @param templateId
   * @see com.sogou.qadev.service.cynthia.bean.Template#removeField(com.sogou.qadev.service.cynthia.bean.UUID, com.sogou.qadev.service.cynthia.bean.UUID)
   */
  public void removeField(UUID fieldId , UUID templateId)
  {
    Iterator<Field> fieldSetItr = this.fieldSet.iterator();
    while (fieldSetItr.hasNext())
    {
      Field field = fieldSetItr.next();
      if (field.getId().equals(fieldId))
        fieldSetItr.remove();
    }

    for(int i = 0; i < fieldRowList.size() ; i++)
    {
      List<FieldColumn> fieldColumns = fieldRowList.get(i).getFieldColumns();
      for(int j = 0 ; j < fieldColumns.size() ; j++)
      {
        List<Field> fields = fieldColumns.get(j).getFields();
        Iterator<Field> fieldsItr = fields.iterator();
        while(fieldsItr.hasNext())
        {
          Field tmpField = fieldsItr.next();
          if(tmpField.getId().equals(fieldId))
            fieldsItr.remove();
        }
      }
    }

    //从数据库中删除关于该字段数据
    new DataAccessSessionMySQL().removeFieldData(templateId , fieldId);
    new FieldNameAccessSessionMySQL().removeFieldColNameById(fieldId.getValue(),templateId.getValue());
  }

  /**
   * (non-Javadoc)
   * <p> Title:toXMLDocument</p>
   * @return
   * @throws Exception
   * @see com.sogou.qadev.service.cynthia.bean.BaseType#toXMLDocument()
   */
  public Document toXMLDocument() throws Exception
  {
    return XMLUtil.string2Document(toXMLString(), "UTF-8");
  }


  /**
   * (non-Javadoc)
   * <p> Title:toXMLString</p>
   * @return
   * @see com.sogou.qadev.service.cynthia.bean.BaseType#toXMLString()
   */
  public String toXMLString()
  {
    StringBuffer xmlb = new StringBuffer(64);
    xmlb.append("<?xml version=\"1.0\" encoding=\"UTF-8\" ?>");
    xmlb.append("<template>");
    xmlb.append("<id>").append(this.getId()).append("</id>");
    xmlb.append("<templateTypeId>").append(this.getTemplateTypeId()).append("</templateTypeId>");
    xmlb.append("<name>").append(XMLUtil.toSafeXMLString(this.getName())).append("</name>");
    xmlb.append("<description>").append(XMLUtil.toSafeXMLString(this.getDescription())).append("</description>");
    xmlb.append("<flowId>").append(this.getFlowId()).append("</flowId>");
    if(this.fieldRowList.size() == 0)
    {
      xmlb.append("<layout><rows></rows></layout>");
    }else
    {
      xmlb.append("<layout>");
      xmlb.append("<rows>");
      for(FieldRow fieldRow : this.fieldRowList)
      {
        xmlb.append("<row>");
        for(FieldColumn fieldColumn : fieldRow.getFieldColumns())
        {
          xmlb.append("<column>");
          for(Field field: fieldColumn.getFields())
          {
            xmlb.append(field.toXMLString());
          }
          xmlb.append("</column>");
        }
        xmlb.append("</row>");
      }
      xmlb.append("</rows>");
      xmlb.append("</layout>");
    }

    xmlb.append("</template>");

    return xmlb.toString();

  }

  /**
   * (non-Javadoc)
   * <p> Title:addFieldRow</p>
   * @param rowIndex
   * @param columnCount
   * @see com.sogou.qadev.service.cynthia.bean.Template#addFieldRow(int, int)
   */
  public void addFieldRow(int rowIndex, int columnCount)
  {
    FieldRow fieldRow = new FieldRow();
    for(int i = 0; i < columnCount ; i++)
    {
      FieldColumn fieldColumn = new FieldColumn();
      fieldRow.addColumn(fieldColumn);
    }
    this.fieldRowList.add(rowIndex, fieldRow);
  }

  /**
   * (non-Javadoc)
   * <p> Title:removeFieldRow</p>
   * @param rowIndex
   * @see com.sogou.qadev.service.cynthia.bean.Template#removeFieldRow(int)
   */
  public void removeFieldRow(int rowIndex)
  {
    this.fieldRowList.remove(rowIndex);
  }

  /**
   * (non-Javadoc)
   * <p> Title:setId</p>
   * @param id
   * @see com.sogou.qadev.service.cynthia.bean.Template#setId(com.sogou.qadev.service.cynthia.bean.UUID)
   */
  @Override
  public void setId(UUID id) {
    this.id = id;
  }
}
TOP

Related Classes of com.sogou.qadev.service.cynthia.bean.impl.TemplateImpl

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.