Package com.sogou.qadev.service.cynthia.service

Examples of com.sogou.qadev.service.cynthia.service.DataAccessSession


   * @see com.sogou.qadev.service.cynthia.bean.Flow#queryAllUserInfo()
   */
  @Override
  public List<UserInfo> queryAllUserInfo() {
    Set<String> allRoleUser = queryAllUser();
    DataAccessSession das = DataAccessFactory.getInstance().getSysDas();
    return das.queryAllUserInfo(allRoleUser.toArray(new String[0]),false);
  }
View Full Code Here


   * @see com.sogou.qadev.service.cynthia.bean.Flow#queryAllUserInfo(com.sogou.qadev.service.cynthia.bean.UUID)
   */
  @Override
  public List<UserInfo> queryAllUserInfo(UUID roleId) {
    Set<String> allRoleUser = queryAllUserByRole(roleId);
    DataAccessSession das = DataAccessFactory.getInstance().getSysDas();
    return das.queryAllUserInfo(allRoleUser.toArray(new String[0]),false);
  }
View Full Code Here

   * @param xml:action xml
   * @return
   */
  protected boolean executeInternal(String id,String username, String xml){
    try{
      DataAccessSession das = DataAccessFactory.getInstance().createDataAccessSession(username, ConfigUtil.magic);
      ScriptAccessSession sas = das.createScriptAccessSession();
      Document doc = XMLUtil.string2Document(xml, "UTF-8");
      Node rootNode = XMLUtil.getSingleNode(doc, "root");
     
      List<Node> scriptIdNodeList = XMLUtil.getNodes(rootNode, "scriptId");
      for(Node scriptIdNode : scriptIdNodeList){
View Full Code Here

    return newFilter;
  }

  public Filter[] queryFilters(String user)
  {
    DataAccessSession das = DataAccessFactory.getInstance().getSysDas();
   
    List<Filter> filterList = new ArrayList<Filter>();

    PreparedStatement pstm = null;
    Connection conn = null;
    ResultSet rs = null;
    try{
      conn = DbPoolConnection.getInstance().getReadConnection();
      pstm = conn.prepareStatement("SELECT * FROM filter WHERE (create_user = ? OR is_public = true AND create_user != ?)"
          + " AND father_id IS NULL AND is_valid = true ORDER BY name");
      pstm.setString(1, user);
      pstm.setString(2, DataAccessFactory.sysUser);

      rs = pstm.executeQuery();
      while(rs.next()){
        UUID id = DataAccessFactory.getInstance().createUUID(rs.getObject("id").toString());
        String createUser = rs.getString("create_user");
        Timestamp createTime = rs.getTimestamp("create_time");

        Filter filter = new FilterImpl(id, createUser, createTime, null);
        filter.setName(rs.getString("name"));
        filter.setXml(rs.getString("xml"));
        filter.setAnd(rs.getBoolean("is_and"));
        filter.setPublic(rs.getBoolean("is_public"));
        filter.setVisible(rs.getBoolean("is_visible"));

        filterList.add(filter);
      }
    }
    catch(Exception e){
      e.printStackTrace();
    }
    finally{
      DbPoolConnection.getInstance().closeResultSet(rs);
      DbPoolConnection.getInstance().closeStatment(pstm);
      DbPoolConnection.getInstance().closeConn(conn);
    }

    Map<UUID, Boolean> templateAllowMap = new HashMap<UUID, Boolean>();
    Map<UUID, List<Template>> allTemplateTypeMap = new HashMap<UUID, List<Template>>();
    Map<UUID, Template> allTemplateMap = new HashMap<UUID, Template>();
    Map<UUID, Flow> allFlowMap = new HashMap<UUID, Flow>();
   
    Iterator<Filter> filterItr = filterList.iterator();
    while(filterItr.hasNext()){
      Filter filter = filterItr.next();

      Document xmlDoc = null;
      try{
        xmlDoc = XMLUtil.string2Document(filter.getXml(), "UTF-8");
      }
      catch(Exception e){
        e.printStackTrace();
        System.err.println("error filter id: " + filter.getId());
      }

      if(xmlDoc == null){
        filterItr.remove();
        continue;
      }

      Node queryNode = XMLUtil.getSingleNode(xmlDoc, "query");
      Node templateTypeNode = XMLUtil.getSingleNode(queryNode, "templateType");
      List<Node> templateNodeList = XMLUtil.getNodes(queryNode, "template");

      List<Template> templateList = new ArrayList<Template>();

      if(templateNodeList.size() == 0){
        String templateTypeIdStr = XMLUtil.getAttribute(templateTypeNode, "id");
        UUID templateTypeId = DataAccessFactory.getInstance().createUUID(templateTypeIdStr);

        if (allTemplateTypeMap.get(templateTypeId) == null) {
          List<Template> templateTypeList = das.queryTemplates(templateTypeId);
          for (Template template : templateTypeList) {
            allTemplateMap.put(template.getId(), template);
          }
        }
        templateList.addAll(allTemplateTypeMap.get(templateTypeId));
      }
      else{
        for(Node templateNode : templateNodeList){
          String templateIdStr = XMLUtil.getAttribute(templateNode, "id");
          UUID templateId = DataAccessFactory.getInstance().createUUID(templateIdStr);

          if (allTemplateMap.get(templateId) == null) {
            Template tmp = das.queryTemplate(templateId);
            allTemplateMap.put(templateId, tmp);
          }
          Template template = allTemplateMap.get(templateId);
          if(template != null){
            templateList.add(template);
          }
        }
      }

      boolean filterAllow = false;

      for(Template template : templateList){
        if(templateAllowMap.containsKey(template.getId())){
          if(templateAllowMap.get(template.getId())){
            filterAllow = true;
            break;
          }

          continue;
        }

        if (allFlowMap.get(template.getFlowId()) == null) {
          Flow tmp = das.queryFlow(template.getFlowId());
          allFlowMap.put(template.getFlowId(), tmp);
        }
       
        Flow flow = allFlowMap.get(template.getFlowId());
       
View Full Code Here

TOP

Related Classes of com.sogou.qadev.service.cynthia.service.DataAccessSession

Copyright © 2018 www.massapicom. 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.