public List<?> getData() { return diagnostic.getData(); }
public int getLineNumber() { if (!diagnostic.getData().isEmpty()) { if (diagnostic.getData().get(0) instanceof SAXParseException) { return ((SAXParseException) diagnostic.getData().get(0)).getLineNumber(); } if (diagnostic.getData().get(0) instanceof Resource.Diagnostic) { return ((Resource.Diagnostic) diagnostic.getData().get(0)).getLine(); } } return -1; } }
public int getColumNumber() { if (!diagnostic.getData().isEmpty()) { if (diagnostic.getData().get(0) instanceof SAXParseException) { return ((SAXParseException) diagnostic.getData().get(0)).getColumnNumber(); } if (diagnostic.getData().get(0) instanceof Resource.Diagnostic) { return ((Resource.Diagnostic) diagnostic.getData().get(0)).getColumn(); } } return -1; }
@Override public void convertValidatorDiagnostic(org.eclipse.emf.common.util.Diagnostic diagnostic, IAcceptor<Issue> acceptor) { if (diagnostic instanceof BasicDiagnostic) { List<?> data = diagnostic.getData(); if (!data.isEmpty() && data.get(0) instanceof Throwable) { Throwable t = (Throwable) data.get(0); throwError(t); } if (EObjectValidator.DIAGNOSTIC_SOURCE.equals(diagnostic.getSource()) && diagnostic.getCode() == EObjectValidator.EOBJECT__EVERY_REFERENCE_IS_CONTAINED) { throwError(new RuntimeException("Dangling reference found.")); } } }
/** * @since 2.4 */ protected String[] getIssueData(org.eclipse.emf.common.util.Diagnostic diagnostic) { if (diagnostic instanceof AbstractValidationDiagnostic) { AbstractValidationDiagnostic diagnosticImpl = (AbstractValidationDiagnostic) diagnostic; return diagnosticImpl.getIssueData(); } else { // replace any EObjects by their URIs EObject causer = getCauser(diagnostic); List<String> issueData = newArrayList(); for (Object object : diagnostic.getData()) { if (object != causer && object instanceof EObject) { EObject eObject = (EObject)object; issueData.add(EcoreUtil.getURI(eObject).toString()); } else if (object instanceof String) { issueData.add( (String) object); } } return issueData.toArray(new String[issueData.size()]); } }
protected EGenericType getGenericType(XSDConcreteComponent xsdConcreteComponent, Element element, EModelElement context, String value) { if (value != null) { value = value.replace('{', '<').replace('}', '>'); Diagnostic diagnostic = eGenericTypeBuilder.parseInstanceTypeName(value); if (diagnostic.getSeverity() == Diagnostic.OK) { EGenericType eGenericType = (EGenericType)diagnostic.getData().get(0); resolveGenericType(xsdConcreteComponent, element, context, eGenericType); return eGenericType; } } return null; }
protected EGenericType getGenericType(XSDConcreteComponent xsdConcreteComponent, Element element, EModelElement context, String value) { if (value != null) { value = value.replace('{', '<').replace('}', '>'); Diagnostic diagnostic = eGenericTypeBuilder.parseInstanceTypeName(value); if (diagnostic.getSeverity() == Diagnostic.OK) { EGenericType eGenericType = (EGenericType)diagnostic.getData().get(0); resolveGenericType(xsdConcreteComponent, element, context, eGenericType); return eGenericType; } } return null; }
protected String normalizeInstanceTypeName(String value) { if (value != null) { Diagnostic diagnostic = EcoreValidator.EGenericTypeBuilder.INSTANCE.parseInstanceTypeName(value); if (diagnostic.getSeverity() == Diagnostic.OK) { value = EcoreUtil.toJavaInstanceTypeName(((EGenericType)diagnostic.getData().get(0))); } } return value; }
private void propageValidationResult(Diagnostic diagnostic, GeneratedMetamodel metamodel, ValidationMessageAcceptor acceptor) { if (diagnostic.getSeverity() != Diagnostic.OK) { if (diagnostic.getCode() != 0) { List<?> data = diagnostic.getData(); if (!data.isEmpty() && data.get(0) instanceof EObject) { doPropagateValidationResult(diagnostic, metamodel, acceptor); } } for(Diagnostic child: diagnostic.getChildren()) propageValidationResult(child, metamodel, acceptor); } }
public static Diagnostic createDiagnostic(Diagnostic baseDiagnostic, String source, int code) { BasicDiagnostic basicDiagnostic = new BasicDiagnostic( baseDiagnostic.getSeverity(), source, code, baseDiagnostic.getMessage(), baseDiagnostic.getData().toArray()); basicDiagnostic.addAll(baseDiagnostic); return basicDiagnostic; }
private void doPropagateValidationResult(Diagnostic diagnostic, GeneratedMetamodel metamodel, ValidationMessageAcceptor acceptor) { boolean foundEObject = false; Object firstData = null; for(Object data: diagnostic.getData()) { if (firstData == null) { firstData = diagnostic.getData().get(0); } if (data instanceof EObject) { if (createMessageForSource(diagnostic, (EObject) data, acceptor)) { foundEObject = true; } if (data instanceof EStructuralFeature && ((EStructuralFeature) data).getEContainingClass() != firstData) { EClass containingClass = ((EStructuralFeature) data).getEContainingClass(); createMessageForSource(diagnostic, containingClass, acceptor); } } } if (!foundEObject) { doCreateMessage( diagnostic, metamodel, XtextPackage.Literals.ABSTRACT_METAMODEL_DECLARATION__EPACKAGE, acceptor); } }
List<?> data = result.getData();
List<?> data = result.getData();
List<?> data = result.getData();
List<?> data = result.getData();
public static Diagnostic mergeDiagnostic(Diagnostic baseDiagnostic, Diagnostic diagnosticToBeMerged) { if (diagnosticToBeMerged == null) { return baseDiagnostic; } else { if (baseDiagnostic == null) { return diagnosticToBeMerged; } else if (baseDiagnostic instanceof DiagnosticChain) { ((DiagnosticChain)baseDiagnostic).merge(diagnosticToBeMerged); return baseDiagnostic; } else { BasicDiagnostic basicDiagnostic = new BasicDiagnostic( baseDiagnostic.getSeverity(), baseDiagnostic.getSource(), baseDiagnostic.getCode(), baseDiagnostic.getMessage(), baseDiagnostic.getData().toArray()); basicDiagnostic.addAll(baseDiagnostic); basicDiagnostic.add(diagnosticToBeMerged); return basicDiagnostic; } } }
} else { List<?> data = diagnostic.getData(); Object feature = data.size() > 1 ? data.get(1) : null; EStructuralFeature structuralFeature = resolveStructuralFeature(causer, feature);
EGenericType eGenericType = (EGenericType)diagnostic.getData().get(0); return getTypeArgument(context, eGenericType, false, erased);