/** @return any Criteria. If no Criteria has been established we establish one and return it. */ private Criteria getOrEstablishSomeCriteria() { Criteria criteria = getSomeCriteria(); if (criteria == null) { final Shard shard = shards.get(0); criteria = shard.establishCriteria(this); } return criteria; }
/** * @return Returns an actual Criteria object. If no actual Criteria object has been allocated, * allocate one and return it. */ private Criteria getOrEstablishSomeSubcriteria() { Criteria crit = getSomeSubcriteria(); if (crit == null) { Shard shard = shards.get(0); // this should trigger the creation of all subcriteria for the parent shard.establishCriteria(parent); } return getSomeSubcriteria(); }