Ce serveur Gitlab sera éteint le 30 juin 2020, pensez à migrer vos projets vers les serveurs gitlab-research.centralesupelec.fr et gitlab-student.centralesupelec.fr !

Commit c4050bf4 authored by Dominique Marcadet's avatar Dominique Marcadet

show how to get NSD objects in loaded resource

parent 86eb1da0
......@@ -27,6 +27,10 @@ import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EValidator;
import org.eclipse.emf.ecore.resource.Resource;
import fr.centralesupelec.edf.riseclipse.iec61850.nsd.DocumentRoot;
import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraint;
import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TFunctionalConstraints;
import fr.centralesupelec.edf.riseclipse.iec61850.nsd.TNS;
import fr.centralesupelec.edf.riseclipse.util.AbstractRiseClipseConsole;
public class NSDEObjectValidator implements EValidator {
......@@ -35,6 +39,18 @@ public class NSDEObjectValidator implements EValidator {
public NSDEObjectValidator( Resource nsdResource ) {
this.nsdResource = nsdResource;
// Cet attribut contient le fichier NSD qui a été chargé.
// On peut par exemple faire:
DocumentRoot root = (DocumentRoot) nsdResource.getContents().get( 0 );
TNS tns = (TNS) root.getNS();
AbstractRiseClipseConsole.getConsole().info( " NS.id: " + tns.getId() );
TFunctionalConstraints fcs = tns.getFunctionalConstraints();
// La suite ne marche que pour IEC_61850-7-2_2007B.nsd
if( fcs != null ) {
TFunctionalConstraint fc0 = fcs.getFunctionalConstraint().get( 0 );
AbstractRiseClipseConsole.getConsole().info( " FunctionalConstraint.titleID: " + fc0.getTitleID() );
}
}
@Override
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment