/** * INTERNAL: * Retrun an expression that updates the write lock */ public Expression getWriteLockUpdateExpression(ExpressionBuilder builder, AbstractSession session) { return ExpressionMath.add(builder.getField(writeLockField.getName()), 1); }
/** * INTERNAL: * Retrun an expression that updates the write lock */ public Expression getWriteLockUpdateExpression(ExpressionBuilder builder, AbstractSession session) { return ExpressionMath.add(builder.getField(writeLockField.getName()), 1); }
/** * INTERNAL: * Retrun an expression that updates the write lock */ public Expression getWriteLockUpdateExpression(ExpressionBuilder builder, AbstractSession session) { return ExpressionMath.add(builder.getField(writeLockField.getName()), 1); }
/** * PUBLIC: * Provide ascending order support for this direct collection mapping. */ public void addAscendingOrdering() { this.hasOrderBy = true; orderByExpressions.add(new ExpressionBuilder().getField(getDirectFieldName()).ascending()); }
/** * PUBLIC: * Provide descending order support for this direct collection mapping. */ public void addDescendingOrdering() { this.hasOrderBy = true; orderByExpressions.add(new ExpressionBuilder().getField(getDirectFieldName()).descending()); }
/** * PUBLIC: * Provide ascending order support for this direct collection mapping. */ public void addAscendingOrdering() { this.hasOrderBy = true; orderByExpressions.add(new ExpressionBuilder().getField(getDirectFieldName()).ascending()); }
/** * PUBLIC: * Provide descending order support for this direct collection mapping. */ public void addDescendingOrdering() { this.hasOrderBy = true; orderByExpressions.add(new ExpressionBuilder().getField(getDirectFieldName()).descending()); }
/** * INTERNAL: * Return the selection criteria used to IN batch fetching. */ @Override protected Expression buildBatchCriteria(ExpressionBuilder builder, ObjectLevelReadQuery query) { int size = this.targetForeignKeyFields.size(); if (size > 1) { // Support composite keys using nested IN. List<Expression> fields = new ArrayList<Expression>(size); for (DatabaseField targetForeignKeyField : this.targetForeignKeyFields) { fields.add(builder.getField(targetForeignKeyField)); } return query.getSession().getPlatform().buildBatchCriteriaForComplexId(builder, fields); } else { return query.getSession().getPlatform().buildBatchCriteria(builder, builder.getField(this.targetForeignKeyFields.get(0))); } }
protected Expression createWhereClauseForDeleteNullQuery(ExpressionBuilder builder) { Expression directExp = builder.getField(getDirectField()).isNull(); Expression expression = null; // Construct an expression to delete from the relation table. for (int index = 0; index < getReferenceKeyFields().size(); index++) { DatabaseField referenceKey = getReferenceKeyFields().get(index); DatabaseField sourceKey = getSourceKeyFields().get(index); Expression subExp1 = builder.getField(referenceKey); Expression subExp2 = builder.getParameter(sourceKey); Expression subExpression = subExp1.equal(subExp2); expression = subExpression.and(expression); } expression = expression.and(directExp); return expression; }
protected Expression createWhereClauseForDeleteNullQuery(ExpressionBuilder builder) { Expression directExp = builder.getField(getDirectField()).isNull(); Expression expression = null; // Construct an expression to delete from the relation table. for (int index = 0; index < getReferenceKeyFields().size(); index++) { DatabaseField referenceKey = getReferenceKeyFields().get(index); DatabaseField sourceKey = getSourceKeyFields().get(index); Expression subExp1 = builder.getField(referenceKey); Expression subExp2 = builder.getParameter(sourceKey); Expression subExpression = subExp1.equal(subExp2); expression = subExpression.and(expression); } expression = expression.and(directExp); return expression; }
protected Expression createWhereClauseForDeleteQuery(ExpressionBuilder builder) { Expression directExp = builder.getField(getDirectField()).equal(builder.getParameter(getDirectField())); Expression expression = null; // Construct an expression to delete from the relation table. for (int index = 0; index < getReferenceKeyFields().size(); index++) { DatabaseField referenceKey = getReferenceKeyFields().get(index); DatabaseField sourceKey = getSourceKeyFields().get(index); Expression subExp1 = builder.getField(referenceKey); Expression subExp2 = builder.getParameter(sourceKey); Expression subExpression = subExp1.equal(subExp2); expression = subExpression.and(expression); } expression = expression.and(directExp); return expression; }
protected Expression createWhereClauseForDeleteQuery(ExpressionBuilder builder) { Expression directExp = builder.getField(getDirectField()).equal(builder.getParameter(getDirectField())); Expression expression = null; // Construct an expression to delete from the relation table. for (int index = 0; index < getReferenceKeyFields().size(); index++) { DatabaseField referenceKey = getReferenceKeyFields().get(index); DatabaseField sourceKey = getSourceKeyFields().get(index); Expression subExp1 = builder.getField(referenceKey); Expression subExp2 = builder.getParameter(sourceKey); Expression subExpression = subExp1.equal(subExp2); expression = subExpression.and(expression); } expression = expression.and(directExp); return expression; }
protected Expression createWhereClauseForDeleteQuery(ExpressionBuilder builder) { Expression directExp = builder.getField(getDirectField()).equal(builder.getParameter(getDirectField())); Expression expression = null; // Construct an expression to delete from the relation table. for (int index = 0; index < getReferenceKeyFields().size(); index++) { DatabaseField referenceKey = getReferenceKeyFields().get(index); DatabaseField sourceKey = getSourceKeyFields().get(index); Expression subExp1 = builder.getField(referenceKey); Expression subExp2 = builder.getParameter(sourceKey); Expression subExpression = subExp1.equal(subExp2); expression = subExpression.and(expression); } expression = expression.and(directExp); return expression; }
/** * INTERNAL: * Returns an expression that will be used for both the update and * delete where clause */ protected Expression buildExpression() { ExpressionBuilder builder = new ExpressionBuilder(); return builder.getField(getWriteLockField()).equal(builder.getParameter(getWriteLockField())); }
/** * INTERNAL: * Returns an expression that will be used for both the update and * delete where clause */ protected Expression buildExpression() { ExpressionBuilder builder = new ExpressionBuilder(); return builder.getField(getWriteLockField()).equal(builder.getParameter(getWriteLockField())); }
/** * INTERNAL: * Returns an expression that will be used for both the update and * delete where clause */ protected Expression buildExpression() { ExpressionBuilder builder = new ExpressionBuilder(); return builder.getField(getWriteLockField()).equal(builder.getParameter(getWriteLockField())); }
/** * INTERNAL: * Initialize the expression to use for queries to the class and its subclasses. */ protected void initializeWithAllSubclassesExpression() throws DescriptorException { if (getWithAllSubclassesExpression() == null) { if (hasClassExtractor()) { return; } if (isChildDescriptor() && shouldReadSubclasses()) { setWithAllSubclassesExpression(new ExpressionBuilder().getField(getClassIndicatorField()).in(getAllChildClassIndicators())); } } }
/** * INTERNAL: * Initialize the expression to use for queries to the class and its subclasses. */ protected void initializeWithAllSubclassesExpression() throws DescriptorException { if (getWithAllSubclassesExpression() == null) { if (hasClassExtractor()) { return; } if (isChildDescriptor() && shouldReadSubclasses()) { setWithAllSubclassesExpression(new ExpressionBuilder().getField(getClassIndicatorField()).in(getAllChildClassIndicators())); } } }
/** * INTERNAL: * Initialize the expression to use for queries to the class and its subclasses. */ protected void initializeWithAllSubclassesExpression() throws DescriptorException { if (getWithAllSubclassesExpression() == null) { if (hasClassExtractor()) { return; } if (isChildDescriptor() && shouldReadSubclasses()) { setWithAllSubclassesExpression(new ExpressionBuilder().getField(getClassIndicatorField()).in(getAllChildClassIndicators())); } } }
protected void initializeDeleteAtIndexQuery(AbstractSession session) { if (!getDeleteAtIndexQuery().hasSessionName()) { getDeleteAtIndexQuery().setSessionName(session.getName()); } if (hasCustomDeleteAtIndexQuery()) { return; } SQLDeleteStatement statement = new SQLDeleteStatement(); ExpressionBuilder builder = new ExpressionBuilder(); Expression expression = createWhereClauseForDeleteQuery(builder); expression = expression.and(builder.getField(this.listOrderField).equal(builder.getParameter(this.listOrderField))); statement.setWhereClause(expression); statement.setTable(getReferenceTable()); getDeleteAtIndexQuery().setSQLStatement(statement); }