All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.sun.xml.ws.api.model.JavaMethod Maven / Gradle / Ivy

There is a newer version: 4.0.3
Show newest version
/*
 * Copyright (c) 1997, 2020 Oracle and/or its affiliates. All rights reserved.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Distribution License v. 1.0, which is available at
 * http://www.eclipse.org/org/documents/edl-v10.php.
 *
 * SPDX-License-Identifier: BSD-3-Clause
 */

package com.sun.xml.ws.api.model;

import com.sun.istack.NotNull;
import com.sun.istack.Nullable;
import com.sun.xml.ws.api.model.soap.SOAPBinding;

import javax.xml.namespace.QName;
import java.lang.reflect.Method;
import java.util.Collection;

import jakarta.jws.WebService;

/**
 * Abstracts the annotated {@link Method} of a SEI.
 *
 * @author Vivek Pandey
 */
public interface JavaMethod {

    /**
     * Gets the root {@link SEIModel} that owns this model.
     */
    SEIModel getOwner();

    /**
     * On the server side, it uses this for invocation of the web service
     *
     * 

* {@literal @}{@link WebService}(endpointInterface="I") * class A { } * * In this case, it retuns A's method * *

* {@literal @}{@link WebService}(endpointInterface="I") * class A implements I { } * In this case, it returns A's method * *

* {@literal @}{@link WebService} * class A { } * In this case, it returns A's method * * @return Returns the java {@link Method} */ @NotNull Method getMethod(); /** * This should be used if you want to access annotations on WebMethod * Returns the SEI method if there is one. * *

* {@literal @}{@link WebService}(endpointInterface="I") * class A { } * In this case, it retuns I's method * *

* {@literal @}{@link WebService}(endpointInterface="I") * class A implements I { } * In this case, it returns I's method * *

* {@literal @}{@link WebService} * class A { } * In this case, it returns A's method * * @return Returns the java {@link Method} */ @NotNull Method getSEIMethod(); /** * @return Returns the {@link MEP}. */ MEP getMEP(); /** * Binding object - a {@link SOAPBinding} isntance. * * @return the Binding object */ SOAPBinding getBinding(); /** * Gives the wsdl:operation@name value */ @NotNull String getOperationName(); /** * Gives the request wsdl:message@name value */ @NotNull String getRequestMessageName(); /** * Gives the response wsdl:messageName value * @return null if its a oneway operation that is getMEP().isOneWay()==true. * @see com.sun.xml.ws.api.model.MEP#isOneWay() */ @Nullable String getResponseMessageName(); /** * Gives soap:Body's first child's name for request message. * * @return * null if this operation doesn't have any request parameter bound to the body. */ @Nullable QName getRequestPayloadName(); /** * Gives soap:Body's first child's name for response message. * * @return * null if this operation doesn't have any response parameter bound to the body. */ @Nullable QName getResponsePayloadName(); /** * Gives the checked Exception thrown from this method. * * @return Returns the {@link CheckedException}. */ Collection getCheckedExceptions(); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy