/** * {@inheritDoc} */ @Override public void visitIndividual(Individual<?, ?> value) { value.accept(this.worker); }
@SuppressWarnings("unchecked") // TODO: fully generify when Vistor is generic <T extends Serializable> Individual<T,?> findOrCreate(Individual<T,?> individual) { individual.accept(this); return (Individual<T,?>)this.found; }
@Override public void visitIndividual(Individual<?, ?> value) { value.accept(this.innerVisitor); }
@SuppressWarnings("unchecked") <T extends Serializable, S extends Individual<T,S>> Individual<T,S> translate(Individual<T,S> individual) { Individual<?, ?> aNodeInd = this.individualCache.get(individual); if(aNodeInd==null) { individual.accept(this); aNodeInd=this.individualCache.get(individual); } return (Individual<T,S>)aNodeInd; } }
private Individual<?, ?> addIndividualToDataset(Individual<?, ?> value) { IndividualTranslator translator=new IndividualTranslator(); value.accept(translator); return translator.getIndividual(); }
public static String formatId(Individual<?, ?> individual) { if(individual==null) { return NULL; } IdFormatter formatter = new IdFormatter(); individual.accept(formatter); return formatter.getFormat(); }
void collect(final Individual<?, ?> individual) throws DataSetModificationException { individual.accept(this); if(this.idInUse) { throw new DataSetModificationException("The data set already has an individual identified as '"+this.id+"'"); } }
@SuppressWarnings("unchecked") public static <T extends Serializable,S extends Individual<T,S>> IndividualReference<T,S> fromIndividual(Individual<T,S> value) { ReferenceBuilder builder = new ReferenceBuilder(); value.accept(builder); return (IndividualReference<T, S>)builder.builtReference(); } }
private Resource<?> toResource(Individual<?,?> individual) { IndividualTranslator translator = new IndividualTranslator(); individual.accept(translator); return translator.getResource(); }
@Override protected final DataSet resourceData(ContentPreferences contentPreferences) throws ApplicationExecutionException { DataSet dataSet = super.resourceData(contentPreferences); if(contentPreferences.isMinimalInclusionRequired()) { List<Individual<?,?>> toClean=new ArrayList<Individual<?,?>>(); for(Individual<?,?> individual:dataSet) { individual.accept(new IndividualFilter(toClean)); } for(Individual<?,?> individual:toClean) { cleanIndividual(individual); } } return dataSet; }