Package com.webobjects.eocontrol

Examples of com.webobjects.eocontrol.EOQualifier


  }

  public static EOQualifier keypathWithinDateRangeQualifier(String _startDateKey, NSTimestamp _startDate, NSTimestamp _endDate) {
    if (_startDate != null) {
      if (_endDate != null) {
        EOQualifier qualifier1 = new ERXKeyValueQualifier(_startDateKey, EOQualifier.QualifierOperatorGreaterThanOrEqualTo, _startDate);
        EOQualifier qualifier2 = new ERXKeyValueQualifier(_startDateKey, EOQualifier.QualifierOperatorLessThanOrEqualTo, _endDate);
        return new ERXAndQualifier(new NSArray<EOQualifier>(new EOQualifier[] { qualifier1, qualifier2 }));
      }
      return new ERXKeyValueQualifier(_startDateKey, EOQualifier.QualifierOperatorGreaterThanOrEqualTo, _startDate);
    }
    else if (_endDate != null) {
View Full Code Here


        NSMutableArray arr = new NSMutableArray();
        for(Enumeration e = dictionary().keyEnumerator(); e.hasMoreElements(); ) {
            String key = (String)e.nextElement();
            if(!"componentLevelKeys".equals(key)) {
                Object value = dictionary().valueForKey(key);
                EOQualifier q = EOQualifier.qualifierWithQualifierFormat( "pageConfiguration = '" + _pageConfiguration + "'" , null);
                Assignment a = createAssigment(key, value);
                arr.addObject(new Rule(level, q, a));
            }
        }
        NSArray keys = (NSArray)_dictionary.valueForKey("displayPropertyKeys");
View Full Code Here

            if(o instanceof NSArray) {
                addRulesForPropertyKeys(level, rules, keys);
            } else {
                String propertyKey = (String)o;
                NSDictionary values = (NSDictionary)dictionary().valueForKeyPath("componentLevelKeys." + propertyKey);
                EOQualifier q = EOQualifier.qualifierWithQualifierFormat( "pageConfiguration = '" + _pageConfiguration + "' and propertyKey = '" + propertyKey + "'" , null);
                for (Enumeration e1 = values.keyEnumerator(); e1.hasMoreElements();) {
                    String key = (String)e1.nextElement();
                    Object value = values.objectForKey(key);
                    Assignment a = createAssigment(key, value);
                    rules.addObject(new Rule(level, q, a));
View Full Code Here

  public WOActionResults eofQueryAction() throws IOException {
    EOEditingContext ec = ERXEC.newEditingContext();
    ec.lock();
    try {
      EOQualifier q1 = new EOKeyValueQualifier("contents", EOQualifier.QualifierOperatorLike, "suspend*");
      EOQualifier q2 = new ERXBetweenQualifier("userCount", Long.valueOf(30), Long.valueOf(800));
      // EOQualifier q3 = new EOKeyValueQualifier("userCount", EOQualifier.QualifierOperatorEqual, Long.valueOf(82));
      //EOQualifier q3 = new EOKeyValueQualifier("userCount", EOQualifier.QualifierOperatorLessThan, Long.valueOf(82));
      EOQualifier q3 = new EOKeyValueQualifier("userCount", EOQualifier.QualifierOperatorLessThanOrEqualTo, Long.valueOf(802));
      EOQualifier qualifier = new EOAndQualifier(new NSArray<EOQualifier>(new EOQualifier[]{q1, q2, q3}));
      EOFetchSpecification fs = new EOFetchSpecification("LuceneAsset", qualifier, null);
      fs.setFetchLimit(5);
      fs.setSortOrderings(new NSArray(new EOSortOrdering("userCount", EOSortOrdering.CompareAscending)));
      Query query = ERLuceneAdaptorChannel.queryForQualifier(new EOKeyValueQualifier("userCount", EOQualifier.QualifierOperatorLessThanOrEqualTo, 802), EOUtilities.entityNamed(ec, "LuceneAsset"));
      fs.setHints(new NSDictionary(query, ERLuceneAdaptor.QUERY_HINTS));
View Full Code Here

            Asset asset = Asset.clazz.allObjects(ec).lastObject();
            AssetGroup assetGroup = AssetGroup.clazz.allObjects(ec).lastObject();
            // new DataCreator().createDummyData();
            ERIndex eofStore = ERIndex.indexNamed("AssetInEOFStore");
            ERIndex fileStore = ERIndex.indexNamed("AssetInFileStore");
            EOQualifier tagQualifier = new EOKeyValueQualifier("tags.name", EOQualifier.QualifierOperatorEqual, tag.name());
            EOQualifier groupQualifier = new EOKeyValueQualifier("assetGroup.name", EOQualifier.QualifierOperatorEqual, tag.name());
            log.info("fileStore: " + fileStore.findGlobalIDs(tagQualifier).count());
            log.info("eofStore: " + eofStore.findGlobalIDs(tagQualifier).count());
            log.info("fileStore: " + fileStore.findGlobalIDs(groupQualifier).count());
            log.info("eofStore: " + eofStore.findGlobalIDs(groupQualifier).count());
           
View Full Code Here

  }

  public NSArray<er.ajax.mootools.example.components.Employee> employees(EOQualifier qualifier, NSArray<EOSortOrdering> sortOrderings, boolean fetch) {
    NSArray<er.ajax.mootools.example.components.Employee> results;
    if (fetch) {
      EOQualifier fullQualifier;
      EOQualifier inverseQualifier = new EOKeyValueQualifier(er.ajax.mootools.example.components.Employee.COMPANY_KEY, EOQualifier.QualifierOperatorEqual, this);
     
      if (qualifier == null) {
        fullQualifier = inverseQualifier;
      }
      else {
View Full Code Here

    }
  }

  public NSMutableArray<NSMutableDictionary<String, Object>> fetch(NSArray<EOAttribute> attributesToFetch,
      EOFetchSpecification fetchSpecification, boolean shouldLock, EOEntity entity, ERMemoryAdaptorContext context) {
    EOQualifier qualifier = null;
    int fetchLimit = 0;
    NSArray<EOSortOrdering> sortOrderings = null;
    if (fetchSpecification != null) {
      qualifier = fetchSpecification.qualifier();
      fetchLimit = fetchSpecification.fetchLimit();
      sortOrderings = fetchSpecification.sortOrderings();
    }

    if (entity.restrictingQualifier() != null) {
      if (qualifier != null) {
        qualifier = new EOAndQualifier(new NSArray(new EOQualifier[] { qualifier, entity.restrictingQualifier() }));
      } else {
        qualifier = entity.restrictingQualifier();
      }
    }

    NSMutableArray<EORelationship> mergeRelationships = new NSMutableArray<EORelationship>();
    if (qualifier != null && context != null) {
      NSArray<EOKeyValueQualifier> keyValueQualifiers = ERXQ.extractKeyValueQualifiers(qualifier);
      for (EOKeyValueQualifier keyValueQualifier : keyValueQualifiers) {
        String qualifierKey = keyValueQualifier.key();
        String relationshipName = qualifierKey;
        if (relationshipName.contains(".")) {
          relationshipName = ERXStringUtilities.firstPropertyKeyInKeyPath(relationshipName);
        }
        EORelationship mergeRelationship = entity.relationshipNamed(relationshipName);
        if (mergeRelationship != null) {
          mergeRelationships.add(mergeRelationship);
          qualifier = ERXQ.replaceQualifierWithQualifier(qualifier, keyValueQualifier,
              ERXQ.has(qualifierKey, new NSArray(keyValueQualifier.value())));
        } else if (qualifierKey.equals(entity.primaryKeyAttributeNames().get(0))
            && keyValueQualifier.selector().name().equals("doesContain") && !(keyValueQualifier.value() instanceof NSArray)) {
          // fix wrong schemaBasedQualifier
          qualifier= ERXQ.replaceQualifierWithQualifier(qualifier, keyValueQualifier,
              ERXQ.is(qualifierKey, keyValueQualifier.value()));
        }
      }
    }

    // int count = 0;
    NSMutableArray<NSMutableDictionary<String, Object>> fetchedRows = new NSMutableArray<NSMutableDictionary<String, Object>>();
    Iterator<NSMutableDictionary<String, Object>> i = iterator();
    while (i.hasNext()) {
      NSMutableDictionary<String, Object> rawRow = i.next();
      NSMutableDictionary<String, Object> row = rowFromStoredValues(rawRow, entity);
      for (EORelationship mergeRelationship : mergeRelationships) {
        NSArray<NSMutableDictionary<String, Object>> found = null;
        if (mergeRelationship.isFlattened() && mergeRelationship.isToMany()) {
          found = fetchRelatedManyToManyRows(entity, row, mergeRelationship, context);
        } else {
          found = fetchRelatedRows(entity, row, mergeRelationship, context);
        }
        if (found != null && !found.isEmpty()) {
          row.setObjectForKey(found, mergeRelationship.name());
        }
      }
      if (qualifier == null || qualifier.evaluateWithObject(row)) {
        for (EORelationship mergeRelationship : mergeRelationships) {
          row.removeObjectForKey(mergeRelationship.name());
        }
        fetchedRows.addObject(row);
        // count++;
View Full Code Here

                  }
                }
              }
            }
          }
          EOQualifier qualifier = null;
          if(qualifiers.count() > 0) {
            qualifier = new EOAndQualifier(qualifiers);
          }
          fs = new EOFetchSpecification(entityName, qualifier, null);
         
View Full Code Here

        // TC - Added for MZ because we have thousands of rules and don't want to comb through all of them to change their priorities.
        return super.priority();
      }
        if(_priority == -1) {
           
            EOQualifier lhs = lhs();
            String lhsString = "";
                          
            _priority = 1000 * author();

            if(lhs != null) {
                lhsString = lhs.toString();
                if(lhsString.indexOf("dummyTrue") == -1) {
                    if(lhsString.indexOf("pageConfiguration") != -1) {
                        _priority += 500;
                    }
                    if(lhs() instanceof EOAndQualifier) {
View Full Code Here

 
  /**
   * @return count of prime numbers found by this task
   */
  public Integer countPrimes() {
    EOQualifier qPrime = ResultItem.XKEY_IS_PRIME.eq(Boolean.TRUE);
    EOQualifier qTaskInfo = ResultItem.XKEY_TASK_INFO.eq(this);
   
    return ERXEOControlUtilities.objectCountWithQualifier(editingContext(), ResultItem.ENTITY_NAME, ERXQ.and(qPrime, qTaskInfo));
  }
View Full Code Here

TOP

Related Classes of com.webobjects.eocontrol.EOQualifier

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.