package fr.inria.atlanmod.neo4emf.change; import org.eclipse.emf.ecore.EReference; import fr.inria.atlanmod.neo4emf.INeo4emfObject; import fr.inria.atlanmod.neo4emf.INeo4emfResource; import fr.inria.atlanmod.neo4emf.change.impl.ChangeLogFactory; import fr.inria.atlanmod.neo4emf.change.impl.Entry; public interface IChangeLogFactory { IChangeLogFactory eINSTANCE = ChangeLogFactory.init(); public IChangeLog<Entry> createChangeLog(INeo4emfResource resource); /** * Return an Unidirectional or Bidirectional AddLink entry * according to eRef * @param from * @param eRef * @param to * @return */ public Entry createAddLink(INeo4emfObject from, EReference eRef, INeo4emfObject to); /** * Return an Unidirectional or Bidirectional RemoveLink entry * according to eRef * @param from * @param eRef * @param to * @return */ public Entry createRemoveLink(INeo4emfObject from, EReference eRef, INeo4emfObject to); }