Package org.apache.tomcat.websocket.pojo

## Class PojoMethodMapping

- java.lang.Object
- - org.apache.tomcat.websocket.pojo.PojoMethodMapping

    public class PojoMethodMapping
    extends Object

For a POJO class annotated with `ServerEndpoint`, an instance of this class creates and caches the method handler, method information and parameter information for the onXXX calls.

### Constructor Summary

Constructors
`PojoMethodMapping​(Class<?> clazzPojo, List<Class<? extends Decoder>> decoderClazzes, String wsPath, InstanceManager instanceManager)` Create a method mapping for the given POJO

### Method Summary

All Methods Instance Methods Concrete Methods
`Set<MessageHandler>` `getMessageHandlers​(Object pojo, Map<String,​String> pathParameters, Session session, EndpointConfig config)`
`Method` `getOnClose()`
`Object[]` `getOnCloseArgs​(Map<String,​String> pathParameters, Session session, CloseReason closeReason)`
`Method` `getOnError()`
`Object[]` `getOnErrorArgs​(Map<String,​String> pathParameters, Session session, Throwable throwable)`
`Method` `getOnOpen()`
`Object[]` `getOnOpenArgs​(Map<String,​String> pathParameters, Session session, EndpointConfig config)`
`String` `getWsPath()`
`boolean` `hasMessageHandlers()`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### PojoMethodMapping

    public PojoMethodMapping​(Class<?> clazzPojo,
                             List<Class<? extends Decoder>> decoderClazzes,
                             String wsPath,
                             InstanceManager instanceManager)
                      throws DeploymentException

Create a method mapping for the given POJO

Parameters:
  `clazzPojo` - POJO implementation class
  `decoderClazzes` - Set of potential decoder classes
  `wsPath` - Path at which the endpoint will be deployed
  `instanceManager` - Instance manager to use to create Decoder instances
Throws:
  `DeploymentException` - If the mapping cannot be completed

### Method Detail

#### getWsPath

    public String getWsPath()

#### getOnOpen

    public Method getOnOpen()

#### getOnOpenArgs

    public Object[] getOnOpenArgs​(Map<String,​String> pathParameters,
                                  Session session,
                                  EndpointConfig config)
                           throws DecodeException

Throws:
  `DecodeException`

#### getOnClose

    public Method getOnClose()

#### getOnCloseArgs

    public Object[] getOnCloseArgs​(Map<String,​String> pathParameters,
                                   Session session,
                                   CloseReason closeReason)
                            throws DecodeException

Throws:
  `DecodeException`

#### getOnError

    public Method getOnError()

#### getOnErrorArgs

    public Object[] getOnErrorArgs​(Map<String,​String> pathParameters,
                                   Session session,
                                   Throwable throwable)
                            throws DecodeException

Throws:
  `DecodeException`

#### hasMessageHandlers

    public boolean hasMessageHandlers()

#### getMessageHandlers

    public Set<MessageHandler> getMessageHandlers​(Object pojo,
                                                  Map<String,​String> pathParameters,
                                                  Session session,
                                                  EndpointConfig config)