/** * PUBLIC: * Return the query name from the set of pre-defined queries * If only one query exists with this name, it will be returned. * If there are multiple queries of this name, this method will search for a query * with no arguments and return the first one it finds. * * @see #getQuery(String, Vector) */ public DatabaseQuery getQuery(String queryName) { return getQuery(queryName, null); }
/** * PUBLIC: * Return the query name from the set of pre-defined queries * If only one query exists with this name, it will be returned. * If there are multiple queries of this name, this method will search for a query * with no arguments and return the first one it finds. * * @see #getQuery(String, Vector) */ public DatabaseQuery getQuery(String queryName) { return getQuery(queryName, null); }
/** * PUBLIC: * Return the query name from the set of pre-defined queries * If only one query exists with this name, it will be returned. * If there are multiple queries of this name, this method will search for a query * with no arguments and return the first one it finds. * * @see #getQuery(String, Vector) */ public DatabaseQuery getQuery(String queryName) { return getQuery(queryName, null); }
/** * ADVANCED: * Clear the query cache associated with the named query on the descriptor for the given class */ public void clearQueryCache(String descriptorQueryName, Class queryClass) { getIdentityMapManager().clearQueryCache((ReadQuery)session.getDescriptor(queryClass).getQueryManager().getQuery(descriptorQueryName)); }
/** * ADVANCED: * Clear the query cache associated with the named query on the descriptor for the given class */ public void clearQueryCache(String descriptorQueryName, Class queryClass) { getIdentityMapManager().clearQueryCache((ReadQuery)session.getDescriptor(queryClass).getQueryManager().getQuery(descriptorQueryName)); }
/** * ADVANCED: * Clear the query cache associated with the named query on the descriptor for the given class */ public void clearQueryCache(String descriptorQueryName, Class queryClass) { getIdentityMapManager().clearQueryCache((ReadQuery)session.getDescriptor(queryClass).getQueryManager().getQuery(descriptorQueryName)); }
/** * ADVANCED: * Clear the query cache associated with the named query on the descriptor for the given class */ @Override public void clearQueryCache(String descriptorQueryName, Class queryClass) { ((UnitOfWorkImpl)this.session).getParent().getIdentityMapAccessor().clearQueryCache((ReadQuery)session.getDescriptor(queryClass).getQueryManager().getQuery(descriptorQueryName)); }
/** * ADVANCED: * Clear the query cache associated with the named query on the descriptor for the given class */ @Override public void clearQueryCache(String descriptorQueryName, Class queryClass) { ((UnitOfWorkImpl)this.session).getParent().getIdentityMapAccessor().clearQueryCache((ReadQuery)session.getDescriptor(queryClass).getQueryManager().getQuery(descriptorQueryName)); }
/** * INTERNAL: * CR#3711: Check if the class for this descriptor has a parent class. * Then search this parent's descriptor for a query with the same name * and arguments. If nothing found, return null. * * This method should only be used recursively by getQuery(). */ protected DatabaseQuery getQueryFromParent(String name, Vector arguments) { ClassDescriptor descriptor = this.descriptor; if (descriptor.hasInheritance()) { InheritancePolicy inheritancePolicy = descriptor.getInheritancePolicy(); ClassDescriptor parent = inheritancePolicy.getParentDescriptor(); // if parent exists, check for the query if (parent != null) { return parent.getQueryManager().getQuery(name, arguments); } } return null; }
/** * INTERNAL: * CR#3711: Check if the class for this descriptor has a parent class. * Then search this parent's descriptor for a query with the same name * and arguments. If nothing found, return null. * * This method should only be used recursively by getQuery(). */ protected DatabaseQuery getQueryFromParent(String name, Vector arguments) { ClassDescriptor descriptor = this.descriptor; if (descriptor.hasInheritance()) { InheritancePolicy inheritancePolicy = descriptor.getInheritancePolicy(); ClassDescriptor parent = inheritancePolicy.getParentDescriptor(); // if parent exists, check for the query if (parent != null) { return parent.getQueryManager().getQuery(name, arguments); } } return null; }
/** * INTERNAL: * CR#3711: Check if the class for this descriptor has a parent class. * Then search this parent's descriptor for a query with the same name * and arguments. If nothing found, return null. * * This method should only be used recursively by getQuery(). */ protected DatabaseQuery getQueryFromParent(String name, Vector arguments) { ClassDescriptor descriptor = this.descriptor; if (descriptor.hasInheritance()) { InheritancePolicy inheritancePolicy = descriptor.getInheritancePolicy(); ClassDescriptor parent = inheritancePolicy.getParentDescriptor(); // if parent exists, check for the query if (parent != null) { return parent.getQueryManager().getQuery(name, arguments); } } return null; }
/** * ADVANCED: * Clear the query cache associated with the named query on the descriptor for the given class */ public void clearQueryCache(String descriptorQueryName, Class queryClass) { ((UnitOfWorkImpl)getSession()).getParent().getIdentityMapAccessor().clearQueryCache((ReadQuery)session.getDescriptor(queryClass).getQueryManager().getQuery(descriptorQueryName)); }
/** * PUBLIC: * Execute the pre-defined query by name and return the result. * Queries can be pre-defined and named to allow for their reuse. * The class is the descriptor in which the query was pre-defined. * * @see DescriptorQueryManager#addQuery(String, DatabaseQuery) */ public Object executeQuery(String queryName, Class domainClass, Vector argumentValues) throws DatabaseException { ClassDescriptor descriptor = getDescriptor(domainClass); if (descriptor == null) { throw QueryException.descriptorIsMissingForNamedQuery(domainClass, queryName); } DatabaseQuery query = descriptor.getQueryManager().getQuery(queryName, argumentValues); if (query == null) { throw QueryException.queryNotDefined(queryName, domainClass); } return executeQuery(query, argumentValues); }
/** * PUBLIC: * Execute the pre-defined query by name and return the result. * Queries can be pre-defined and named to allow for their reuse. * The class is the descriptor in which the query was pre-defined. * * @see DescriptorQueryManager#addQuery(String, DatabaseQuery) */ public Object executeQuery(String queryName, Class domainClass) throws DatabaseException { ClassDescriptor descriptor = getDescriptor(domainClass); if (descriptor == null) { throw QueryException.descriptorIsMissingForNamedQuery(domainClass, queryName); } DatabaseQuery query = descriptor.getQueryManager().getQuery(queryName); if (query == null) { throw QueryException.queryNotDefined(queryName, domainClass); } return executeQuery(query); }
/** * PUBLIC: * Execute the pre-defined query by name and return the result. * Queries can be pre-defined and named to allow for their reuse. * The class is the descriptor in which the query was pre-defined. * * @see DescriptorQueryManager#addQuery(String, DatabaseQuery) */ public Object executeQuery(String queryName, Class domainClass, Vector argumentValues) throws DatabaseException { ClassDescriptor descriptor = getDescriptor(domainClass); if (descriptor == null) { throw QueryException.descriptorIsMissingForNamedQuery(domainClass, queryName); } DatabaseQuery query = descriptor.getQueryManager().getQuery(queryName, argumentValues); if (query == null) { throw QueryException.queryNotDefined(queryName, domainClass); } return executeQuery(query, argumentValues); }
/** * PUBLIC: * Execute the pre-defined query by name and return the result. * Queries can be pre-defined and named to allow for their reuse. * The class is the descriptor in which the query was pre-defined. * * @see DescriptorQueryManager#addQuery(String, DatabaseQuery) */ public Object executeQuery(String queryName, Class domainClass) throws DatabaseException { ClassDescriptor descriptor = getDescriptor(domainClass); if (descriptor == null) { throw QueryException.descriptorIsMissingForNamedQuery(domainClass, queryName); } DatabaseQuery query = descriptor.getQueryManager().getQuery(queryName); if (query == null) { throw QueryException.queryNotDefined(queryName, domainClass); } return executeQuery(query); }
/** * PUBLIC: * Execute the pre-defined query by name and return the result. * Queries can be pre-defined and named to allow for their reuse. * The class is the descriptor in which the query was pre-defined. * * @see DescriptorQueryManager#addQuery(String, DatabaseQuery) */ public Object executeQuery(String queryName, Class domainClass, Vector argumentValues) throws DatabaseException { ClassDescriptor descriptor = getDescriptor(domainClass); if (descriptor == null) { throw QueryException.descriptorIsMissingForNamedQuery(domainClass, queryName); } DatabaseQuery query = descriptor.getQueryManager().getQuery(queryName, argumentValues); if (query == null) { throw QueryException.queryNotDefined(queryName, domainClass); } return executeQuery(query, argumentValues); }
/** * PUBLIC: * Execute the pre-defined query by name and return the result. * Queries can be pre-defined and named to allow for their reuse. * The class is the descriptor in which the query was pre-defined. * * @see DescriptorQueryManager#addQuery(String, DatabaseQuery) */ @Override public Object executeQuery(String queryName, Class domainClass) throws DatabaseException { ClassDescriptor descriptor = getDescriptor(domainClass); if (descriptor == null) { throw QueryException.descriptorIsMissingForNamedQuery(domainClass, queryName); } DatabaseQuery query = descriptor.getQueryManager().getQuery(queryName); if (query == null) { throw QueryException.queryNotDefined(queryName, domainClass); } return executeQuery(query); }
/** * {@inheritDoc} */ @Override public void initialize(XRServiceAdapter xrService, QueryOperation queryOperation) { if (descriptor != null) { ClassDescriptor cd = xrService.getORSession().getProject().getDescriptorForAlias(descriptor); databaseQuery = cd.getQueryManager().getQuery(name); } else { databaseQuery = xrService.getORSession().getQuery(name); if (databaseQuery == null) { // must be a JPAQuery for (DatabaseQuery q : xrService.getORSession().getJPAQueries()) { if (q.getName().equals(name)) { databaseQuery = q; break; } } } } } }
/** * A named query after serialization is executed locally. */ public Transporter executeNamedQuery(Transporter nameTransporter, Transporter classTransporter, Transporter argumentsTransporter) { Transporter transporter = new Transporter(); try { Object result; DatabaseQuery query; if (classTransporter.getObject() == null) { result = getSession().executeQuery((String)nameTransporter.getObject(), (Vector)argumentsTransporter.getObject()); query = getSession().getQuery((String)nameTransporter.getObject()); } else { result = getSession().executeQuery((String)nameTransporter.getObject(), (Class)classTransporter.getObject(), (Vector)argumentsTransporter.getObject()); query = getSession().getDescriptor((Class)classTransporter.getObject()).getQueryManager().getQuery((String)nameTransporter.getObject()); } transporter.setQuery(query); transporter.setObjectDescriptors(query.replaceValueHoldersIn(result, this)); transporter.setObject(result); } catch (RuntimeException exception) { transporter.setException(exception); } return transporter; }