| package org.eclipse.jpt.jaxb.eclipselink.core.internal.context.java; |
| |
| import java.util.List; |
| import org.eclipse.jdt.core.dom.CompilationUnit; |
| import org.eclipse.jpt.common.core.resource.java.JavaResourceMethod; |
| import org.eclipse.jpt.jaxb.core.context.XmlRegistry; |
| import org.eclipse.jpt.jaxb.core.internal.context.java.GenericJavaElementFactoryMethod; |
| import org.eclipse.jpt.jaxb.core.resource.java.JAXB; |
| import org.eclipse.jpt.jaxb.eclipselink.core.internal.validation.ELJaxbValidationMessageBuilder; |
| import org.eclipse.jpt.jaxb.eclipselink.core.internal.validation.ELJaxbValidationMessages; |
| import org.eclipse.wst.validation.internal.provisional.core.IMessage; |
| |
| |
| public class ELJavaElementFactoryMethod |
| extends GenericJavaElementFactoryMethod { |
| |
| public ELJavaElementFactoryMethod(XmlRegistry parent, JavaResourceMethod resourceMethod) { |
| super(parent, resourceMethod); |
| } |
| |
| |
| @Override |
| protected void validateMethodReturnType( |
| JavaResourceMethod resourceMethod, List<IMessage> messages, CompilationUnit astRoot) { |
| |
| if (! resourceMethod.typeIsSubTypeOf(JAXB.JAXB_ELEMENT)) { |
| messages.add( |
| ELJaxbValidationMessageBuilder.buildMessage( |
| IMessage.HIGH_SEVERITY, |
| ELJaxbValidationMessages.XML_ELEMENT_DECL__INVALID_METHOD_SIGNATURE_RETURN_TYPE, |
| this, |
| getValidationTextRange(astRoot))); |
| } |
| } |
| } |