Package it.eng.qbe.query

Examples of it.eng.qbe.query.Filter


     * Adds the filter conditions.
     *
     * @param condition the condition
     */
    public void addFilterConditions(String condition) {
      Filter filter = new Filter(name, condition);
      filterConditions.add(filter);
    }
View Full Code Here


      IModelEntity entity = dataMartModelStructure.getEntity( entityUniqueName );
     
      // check for condition filter on this entity
      List filters = dataMartModelAccessModality.getEntityFilterConditions(entity.getType());
      for(int i = 0; i < filters.size(); i++) {
        Filter filter = (Filter)filters.get(i);
        Set fields = filter.getFields();
        Properties props = new Properties();
        Iterator fieldIterator = fields.iterator();
        while(fieldIterator.hasNext()) {
          String fieldName = (String)fieldIterator.next();
          String entityAlias = (String)entityAliases.get(entityUniqueName);
          props.put(fieldName, entityAlias + "." + fieldName);
        }
        String filterCondition = null;
        try {
          filterCondition = StringUtils.replaceParameters(filter.getFilterCondition(), "F", props);
        } catch (IOException e) {
          e.printStackTrace();
        }
       
        if(filterCondition != null) {
          if(buffer.toString().length() > 0) {
            buffer.append(" and ");
          } else {
            buffer.append("where ");
          }
          buffer.append(filterCondition + " ");
        }
      }
     
     
     
      if(dataMartModelAccessModality.getRecursiveFiltering() == null
          || dataMartModelAccessModality.getRecursiveFiltering().booleanValue() == true) {
        //  check for condition filter on sub entities
        List subEntities = entity.getAllSubEntities();
        for(int i = 0; i < subEntities.size(); i++) {
          IModelEntity subEntity = (IModelEntity)subEntities.get(i);
          filters = dataMartModelAccessModality.getEntityFilterConditions(subEntity.getType());
          for(int j = 0; j < filters.size(); j++) {
            Filter filter = (Filter)filters.get(j);
            Set fields = filter.getFields();
            Properties props = new Properties();
            Iterator fieldIterator = fields.iterator();
            while(fieldIterator.hasNext()) {
              String fieldName = (String)fieldIterator.next();
              IModelField filed = null;
              Iterator subEntityFields = subEntity.getAllFields().iterator();
              while(subEntityFields.hasNext()) {
                filed = (IModelField)subEntityFields.next();
                if(( (String)filed.getQueryName().getFirst()).endsWith("." + fieldName)) break;
              }
              String entityAlias = (String)entityAliases.get(entityUniqueName);
              props.put(fieldName, entityAlias + "." + filed.getQueryName());
            }
            String filterCondition = null;
            try {
              filterCondition = StringUtils.replaceParameters(filter.getFilterCondition(), "F", props);
            } catch (IOException e) {
              e.printStackTrace();
            }
           
            if(filterCondition != null) {
View Full Code Here

     
      // check for condition filter on this entity
      List filters = dataMartModelAccessModality.getEntityFilterConditions(entity.getType());
      if(filters!=null){
        for(int i = 0; i < filters.size(); i++) {
          Filter filter = (Filter)filters.get(i);
          Set fields = filter.getFields();
          Properties props = new Properties();
          Iterator fieldIterator = fields.iterator();
          while(fieldIterator.hasNext()) {
            String fieldName = (String)fieldIterator.next();
            String entityAlias = (String)entityAliases.get(entityUniqueName);
            props.put(fieldName, entityAlias + "." + fieldName);
          }
          String filterCondition = null;
          try {
            filterCondition = StringUtils.replaceParameters(filter.getFilterCondition(), "F", props);
          } catch (IOException e) {
            e.printStackTrace();
          }
         
          if(filterCondition != null) {
            if(buffer.toString().length() > 0) {
              buffer.append(" and ");
            } else {
              buffer.append("where ");
            }
            buffer.append(filterCondition + " ");
          }
        }
       
       
       
        if(dataMartModelAccessModality.getRecursiveFiltering() == null
            || dataMartModelAccessModality.getRecursiveFiltering().booleanValue() == true) {
          //  check for condition filter on sub entities
          List subEntities = entity.getAllSubEntities();
          for(int i = 0; i < subEntities.size(); i++) {
            IModelEntity subEntity = (IModelEntity)subEntities.get(i);
            filters = dataMartModelAccessModality.getEntityFilterConditions(subEntity.getType());
            for(int j = 0; j < filters.size(); j++) {
              Filter filter = (Filter)filters.get(j);
              Set fields = filter.getFields();
              Properties props = new Properties();
              Iterator fieldIterator = fields.iterator();
              while(fieldIterator.hasNext()) {
                String fieldName = (String)fieldIterator.next();
                IModelField filed = null;
                Iterator subEntityFields = subEntity.getAllFields().iterator();
                while(subEntityFields.hasNext()) {
                  filed = (IModelField)subEntityFields.next();
                  if(((String)filed.getQueryName().getFirst()).endsWith("." + fieldName)) break;
                }
                String entityAlias = (String)entityAliases.get(entityUniqueName);
                props.put(fieldName, entityAlias + "." + filed.getQueryName());
              }
              String filterCondition = null;
              try {
                filterCondition = StringUtils.replaceParameters(filter.getFilterCondition(), "F", props);
              } catch (IOException e) {
                e.printStackTrace();
              }
             
              if(filterCondition != null) {
View Full Code Here

TOP

Related Classes of it.eng.qbe.query.Filter

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.