/** * Get, or create if there is none, a migration annotation for a group. * * @param source the source of the annotation * @param representation the DRepresentation * @param eObject the data of the annotation * @return the annotation entry */ public static AnnotationEntry getOrCreateAnnotation( final String source, final DRepresentation representation, final EObject eObject) { AnnotationEntry annotation = new DRepresentationQuery(representation).getAnnotation(source, eObject).get(); if (annotation == null && eObject != null) { annotation = DescriptionFactory.eINSTANCE.createAnnotationEntry(); annotation.setSource(source); annotation.setData(eObject); representation.getOwnedAnnotationEntries().add(annotation); } return annotation; }