Package com.alvazan.orm.api.z5api

Examples of com.alvazan.orm.api.z5api.SpiMetaQuery


  @Override
  public <T> Query<T> createNamedQuery(Class<T> forEntity, String namedQuery) {
    MetaClass<T> metaClass = metaInfo.getMetaClass(forEntity);
    if(metaClass == null)
      throw new IllegalArgumentException("Class not scanned="+metaClass+" so you may need to add @NoSqlEntity");
    SpiMetaQuery metaQuery = metaClass.getNamedQuery(forEntity, namedQuery);
   
    SpiQueryAdapter spiAdapter = metaQuery.createQueryInstanceFromQuery(session);
   
    //We cannot return MetaQuery since it is used by all QueryAdapters and each QueryAdapter
    //runs in a different thread potentially while MetaQuery is one used by all threads
    QueryAdapter<T> adapter = adapterFactory.get();
    adapter.setup(metaClass, metaQuery, spiAdapter, this, forEntity);
View Full Code Here


    //log.info("Parsing queries for entity="+classMeta.getMetaClass());
    for(NoSqlQuery query : theQueries) {
      if (log.isInfoEnabled())
        log.info("["+classMeta.getMetaClass().getSimpleName()+"]parsing query="+query.name()+" query="+query.query());
      SpiMetaQuery metaQuery = createQueryAndAdd(classMeta, query);
      classMeta.addQuery(query.name(), metaQuery);
    }
   
    if(classMeta instanceof MetaClassInheritance) {
      MetaClassInheritance parentMeta = (MetaClassInheritance) classMeta;
View Full Code Here

    // We must walk the tree allowing 2 visitors to see it.
    // The first visitor would be ourselves maybe? to get all parameter info
    // The second visitor is the SPI Index so it can create it's "prototype"
    // query (prototype pattern)
    String errorMsg = "Named Query on class "+classMeta.getMetaClass().getName()+" (name=\""+query.name()+"\",query=\""+query.query()+"\")";
    SpiMetaQuery metaQuery = noSqlSessionFactory.parseQueryForOrm(query.query(), classMeta.getColumnFamily(), errorMsg);

    return metaQuery;
  }
View Full Code Here

    return results;
  }
 
  @Override
  public QueryResult createQueryCursor(String query, int batchSize) {
    SpiMetaQuery metaQuery = noSqlSessionFactory.parseQueryForAdHoc(query, mgr);
   
    SpiQueryAdapter spiQueryAdapter = metaQuery.createQueryInstanceFromQuery(session);
   
    spiQueryAdapter.setBatchSize(batchSize);
    Set<ViewInfo> alreadyJoinedViews = new HashSet<ViewInfo>();
    DirectCursor<IndexColumnInfo> iter = spiQueryAdapter.getResultList(alreadyJoinedViews, null);
View Full Code Here

  }

  private int updateBatch(Cursor<List<TypedRow>> cursor, QueryResult result) {
    int rowCount = 0;
    QueryResultImpl impl = (QueryResultImpl) result;
    SpiMetaQuery metaQuery = impl.getMetaQuery();
    String queryType = metaQuery.getQueryType();
    List<TypedColumn> updateList = metaQuery.getUpdateList();
    if (queryType.equalsIgnoreCase("DELETE")) {
      while (cursor.next()) {
        List<TypedRow> joinedRow = cursor.getCurrent();
        deleteRow(joinedRow);
        rowCount++;
View Full Code Here

  @Inject
  private ScannerSql compiler;
 
  @Override
  public SpiMetaQuery parseQueryForAdHoc(String query, MetaLoader mgr) {   
    SpiMetaQuery metaQuery = newsetupByVisitingTree(query, null, mgr, "Query="+query+". ");
    return metaQuery;
  }
View Full Code Here

  public DboTableMeta getMetaDbo() {
    return metaDbo;
  }
 
  public SpiMetaQuery getNamedQuery(Class<? extends T> clazz, String name) {
    SpiMetaQuery query = queryInfo.get(name);
    if(query == null)
      throw new IllegalArgumentException("Named query="+name+" does not exist on type="+getMetaClass().getName());
    return query;
  }
View Full Code Here

    return results;
  }
 
  @Override
  public QueryResult createQueryCursor(String query, int batchSize) {
    SpiMetaQuery metaQuery = noSqlSessionFactory.parseQueryForAdHoc(query, mgr);
   
    SpiQueryAdapter spiQueryAdapter = metaQuery.createQueryInstanceFromQuery(session);
   
    spiQueryAdapter.setBatchSize(batchSize);
    Set<ViewInfo> alreadyJoinedViews = new HashSet<ViewInfo>();
    DirectCursor<IndexColumnInfo> iter = spiQueryAdapter.getResultList(alreadyJoinedViews, null);
View Full Code Here

  }

  private int updateBatch(Cursor<List<TypedRow>> cursor, QueryResult result) {
    int rowCount = 0;
    QueryResultImpl impl = (QueryResultImpl) result;
    SpiMetaQuery metaQuery = impl.getMetaQuery();
    String queryType = metaQuery.getQueryType();
    List<TypedColumn> updateList = metaQuery.getUpdateList();
    if (queryType.equalsIgnoreCase("DELETE")) {
      while (cursor.next()) {
        List<TypedRow> joinedRow = cursor.getCurrent();
        deleteRow(joinedRow);
        rowCount++;
View Full Code Here

  @Inject
  private ScannerSql compiler;
 
  @Override
  public SpiMetaQuery parseQueryForAdHoc(String query, MetaLoader mgr) {   
    SpiMetaQuery metaQuery = newsetupByVisitingTree(query, null, mgr, "Query="+query+". ");
    return metaQuery;
  }
View Full Code Here

TOP

Related Classes of com.alvazan.orm.api.z5api.SpiMetaQuery

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.