48 lines
1.2 KiB
Java
48 lines
1.2 KiB
Java
/**
|
|
*
|
|
*/
|
|
package org.gcube.informationsystem.impl.relation;
|
|
|
|
import org.gcube.informationsystem.impl.entity.EntityImpl;
|
|
import org.gcube.informationsystem.model.annotations.ISPropertyRef;
|
|
import org.gcube.informationsystem.model.annotations.ISRelation;
|
|
import org.gcube.informationsystem.model.entity.Entity;
|
|
import org.gcube.informationsystem.model.relation.Relation;
|
|
import org.gcube.informationsystem.model.relation.RelationProperty;
|
|
|
|
/**
|
|
* @author Luca Frosini (ISTI - CNR) http://www.lucafrosini.com/
|
|
*
|
|
*/
|
|
@ISRelation(name="Realation", out=EntityImpl.class, in=EntityImpl.class, abstractClass= true)
|
|
public abstract class RelationImpl<Out extends Entity, In extends Entity> implements Relation<Out, In> {
|
|
|
|
protected Out source;
|
|
protected In target;
|
|
|
|
@ISPropertyRef(ref=RelationPropertyImpl.class)
|
|
protected RelationProperty relationProperty;
|
|
|
|
protected RelationImpl(Out source, In target, RelationProperty relationProperty){
|
|
this.source = source;
|
|
this.target = target;
|
|
this.relationProperty = relationProperty;
|
|
}
|
|
|
|
@Override
|
|
public Out getSource() {
|
|
return null;
|
|
}
|
|
|
|
@Override
|
|
public In getTarget() {
|
|
return null;
|
|
}
|
|
|
|
@Override
|
|
public RelationProperty getRelationProperty() {
|
|
return this.relationProperty;
|
|
}
|
|
|
|
}
|