@Override public void visit( PropertyExistence prop ) { symbols.add(prop.selectorName()); }
@Override public void visit( PropertyExistence prop ) { symbols.add(prop.selectorName()); }
@Override public String getSelectorName() { return selectorName().getString(); }
@Override public String getSelectorName() { return selectorName().getString(); }
@Override public void visit( PropertyExistence obj ) { verify(obj.selectorName(), obj.getPropertyName(), this.validateColumnExistence); }
@Override public void visit( PropertyExistence prop ) { addColumnFor(prop.selectorName(), prop.getPropertyName()); }
@Override public void visit( PropertyExistence prop ) { addColumnFor(prop.selectorName(), prop.getPropertyName()); }
@Override public void visit( PropertyExistence existence ) { requireColumn(existence.selectorName(), existence.getPropertyName()); }
@Override public void visit( PropertyExistence prop ) { addColumnFor(prop.selectorName(), prop.getPropertyName()); }
@Override public void visit( PropertyExistence prop ) { addColumnFor(prop.selectorName(), prop.getPropertyName()); }
@Override public void visit( PropertyExistence obj ) { verify(obj.selectorName(), obj.getPropertyName(), this.validateColumnExistence); }
@Override public void visit( PropertyExistence existence ) { requireColumn(existence.selectorName(), existence.getPropertyName()); }
@Override public void visit( PropertyExistence existence ) { append(existence.selectorName()).append('.').appendPropertyName(existence.getPropertyName()).append(" IS NOT NULL"); }
@Override public void visit( PropertyExistence existence ) { append(existence.selectorName()).append('.').appendPropertyName(existence.getPropertyName()).append(" IS NOT NULL"); }
@Test public void shouldParsePropertyExistanceFromPropertyNameWithSelectorNameAndPropertyNameFollowedByIsNotNull() { Constraint constraint = parser.parsePropertyExistance(tokens("tableA.property1 IS NOT NULL"), typeSystem, mock(Source.class)); assertThat(constraint, is(instanceOf(PropertyExistence.class))); PropertyExistence p = (PropertyExistence)constraint; assertThat(p.getPropertyName(), is("property1")); assertThat(p.selectorName(), is(selectorName("tableA"))); }
@Test public void shouldParseNotPropertyExistanceFromPropertyNameWithSelectorNameAndPropertyNameFollowedByIsNull() { Constraint constraint = parser.parsePropertyExistance(tokens("tableA.property1 IS NULL"), typeSystem, mock(Source.class)); assertThat(constraint, is(instanceOf(Not.class))); Not not = (Not)constraint; assertThat(not.getConstraint(), is(instanceOf(PropertyExistence.class))); PropertyExistence p = (PropertyExistence)not.getConstraint(); assertThat(p.getPropertyName(), is("property1")); assertThat(p.selectorName(), is(selectorName("tableA"))); }
@Test public void shouldParsePropertyExistanceFromPropertyNameWithPropertyNameAndNoSelectorNameFollowedByIsNotNull() { NamedSelector source = new NamedSelector(selectorName("tableA")); Constraint constraint = parser.parsePropertyExistance(tokens("property1 IS NOT NULL"), typeSystem, source); assertThat(constraint, is(instanceOf(PropertyExistence.class))); PropertyExistence p = (PropertyExistence)constraint; assertThat(p.getPropertyName(), is("property1")); assertThat(p.selectorName(), is(selectorName("tableA"))); }
|| "jcr:score".equals(property) || "mode:id".equals(property)) { return new PropertyExistence(exist.selectorName(), "jcr:primaryType");
@Test public void shouldParseSelectWithOrderByClause() { query = parse("SELECT car:model FROM car:Car WHERE car:model IS NOT NULL ORDER BY car:model ASC"); // SELECT car:model ... assertThat(query.columns().size(), is(1)); assertThat(query.columns().get(0).selectorName(), is(selectorName("car:Car"))); assertThat(query.columns().get(0).getColumnName(), is("car:model")); assertThat(query.columns().get(0).getPropertyName(), is("car:model")); // FROM ... NamedSelector selector = (NamedSelector)query.source(); assertThat(selector.name(), is(selectorName("car:Car"))); assertThat(selector.aliasOrName(), is(selectorName("car:Car"))); assertThat(selector.alias(), is(nullValue())); // WHERE ... PropertyExistence constraint = isPropertyExistence(query.constraint()); assertThat(constraint.getPropertyName(), is("car:model")); assertThat(constraint.selectorName(), is(selectorName("car:Car"))); // ORDER BY ... assertThat(query.orderings().size(), is(1)); Ordering ordering = query.orderings().get(0); assertThat(ordering.order(), is(Order.ASCENDING)); assertThat(ordering.getOperand(), is((DynamicOperand)propertyValue(selectorName("car:Car"), "car:model"))); }
@Test public void shouldParseSelectWithOrderByClause() { query = parse("SELECT [car:model] FROM [car:Car] WHERE [car:model] IS NOT NULL ORDER BY [car:model] ASC"); // SELECT car:model ... assertThat(query.columns().size(), is(1)); assertThat(query.columns().get(0).selectorName(), is(selectorName("car:Car"))); assertThat(query.columns().get(0).getColumnName(), is("car:model")); assertThat(query.columns().get(0).getPropertyName(), is("car:model")); // FROM ... NamedSelector selector = (NamedSelector)query.source(); assertThat(selector.name(), is(selectorName("car:Car"))); assertThat(selector.aliasOrName(), is(selectorName("car:Car"))); assertThat(selector.alias(), is(nullValue())); // WHERE ... PropertyExistence constraint = isPropertyExistence(query.constraint()); assertThat(constraint.getPropertyName(), is("car:model")); assertThat(constraint.selectorName(), is(selectorName("car:Car"))); // ORDER BY ... assertThat(query.orderings().size(), is(1)); Ordering ordering = query.orderings().get(0); assertThat(ordering.order(), is(Order.ASCENDING)); assertThat(ordering.getOperand(), is((DynamicOperand)propertyValue(selectorName("car:Car"), "car:model"))); }