Package io.vertx.serviceproxy.generator.model

## Class ProxyModel

- java.lang.Object
- - io.vertx.codegen.processor.ClassModel
  - - io.vertx.serviceproxy.generator.model.ProxyModel

- All Implemented Interfaces:
    `io.vertx.codegen.processor.Model`
  Direct Known Subclasses:
    `WebApiProxyModel`

      public class ProxyModel
      extends io.vertx.codegen.processor.ClassModel

  Author:
    Tim Fox

- - ### Field Summary

    - ### Fields inherited from class io.vertx.codegen.processor.ClassModel

      `abstractSuperTypes, annotations, annotationValueInfoFactory, anyJavaTypeMethods, anyMethodAnnotationsMap, collectedTypes, concrete, concreteSuperType, constants, deprecated, deprecatedDesc, doc, docFactory, elementUtils, env, FUNCTION, functionArgs, futureMethods, handlerArg, ifaceComment, ifaceFQCN, ifacePackageName, ifaceSimpleName, importedTypes, ITERABLE, iterableArg, ITERATOR, iteratorArg, JSON_ARRAY, JSON_OBJECT, messager, methodAnnotationsMap, methodMap, methods, modelElt, processed, readStreamArg, referencedDataObjectTypes, referencedEnumTypes, referencedTypes, superTypes, SUPPLIER, supplierArg, type, typeFactory, typeUtils, VERTX_HANDLER, VERTX_READ_STREAM, VERTX_WRITE_STREAM, writeStreamArg`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ProxyModel​(ProcessingEnvironment env, io.vertx.codegen.processor.type.TypeMirrorFactory typeFactory, TypeElement modelElt)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected void` | `checkMethod​(io.vertx.codegen.processor.MethodInfo methodInfo)` |
    `protected void` | `checkParamType​(ExecutableElement elem, io.vertx.codegen.processor.type.TypeInfo typeInfo, int pos, int numParams)` |
    `protected void` | `checkReturnType​(ExecutableElement elem, io.vertx.codegen.processor.type.TypeInfo type)` |
    `protected io.vertx.codegen.processor.MethodInfo` | `createMethodInfo​(Set<io.vertx.codegen.processor.type.ClassTypeInfo> ownerTypes, String methodName, String comment, io.vertx.codegen.processor.doc.Doc doc, io.vertx.codegen.processor.type.TypeInfo returnType, io.vertx.codegen.processor.doc.Text returnDescription, boolean isFluent, boolean isCacheReturn, List<io.vertx.codegen.processor.ParamInfo> mParams, ExecutableElement methodElt, boolean isStatic, boolean isDefault, ArrayList<io.vertx.codegen.processor.TypeParamInfo.Method> typeParams, TypeElement declaringElt, boolean methodDeprecated, io.vertx.codegen.processor.doc.Text methodDeprecatedDesc, boolean methodOverride)` |
    `String` | `getKind()` |

    - ### Methods inherited from class io.vertx.codegen.processor.ClassModel

      `getAbstractSuperTypes, getAnnotations, getAnyJavaTypeMethods, getAnyMethodAnnotations, getConcreteSuperType, getConstants, getDeprecatedDesc, getDoc, getElement, getFqn, getFunctionArgs, getHandlerArg, getIfaceComment, getIfaceFQCN, getIfacePackageName, getIfaceSimpleName, getImportedTypes, getInstanceMethods, getIterableArg, getIteratorArg, getMethodAnnotations, getMethodMap, getMethods, getModule, getReadStreamArg, getReferencedDataObjectTypes, getReferencedEnumTypes, getReferencedTypes, getStaticMethods, getSuperTypeArguments, getSuperTypes, getSupplierArg, getType, getTypeParams, getVars, getWriteStreamArg, isConcrete, isDeprecated, isFunction, isHandler, isIterable, isIterator, isReadStream, isSupplier, isWriteStream, process`

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

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

    - ### Methods inherited from interface io.vertx.codegen.processor.Model

      `getAnnotation`

- - ### Constructor Detail

    - #### ProxyModel

          public ProxyModel​(ProcessingEnvironment env,
                            io.vertx.codegen.processor.type.TypeMirrorFactory typeFactory,
                            TypeElement modelElt)

  - ### Method Detail

    - #### getKind

          public String getKind()

      Specified by:
        `getKind` in interface `io.vertx.codegen.processor.Model`
      Overrides:
        `getKind` in class `io.vertx.codegen.processor.ClassModel`

    - #### checkParamType

          protected void checkParamType​(ExecutableElement elem,
                                        io.vertx.codegen.processor.type.TypeInfo typeInfo,
                                        int pos,
                                        int numParams)

      Overrides:
        `checkParamType` in class `io.vertx.codegen.processor.ClassModel`

    - #### checkReturnType

          protected void checkReturnType​(ExecutableElement elem,
                                         io.vertx.codegen.processor.type.TypeInfo type)

      Overrides:
        `checkReturnType` in class `io.vertx.codegen.processor.ClassModel`

    - #### checkMethod

          protected void checkMethod​(io.vertx.codegen.processor.MethodInfo methodInfo)

      Overrides:
        `checkMethod` in class `io.vertx.codegen.processor.ClassModel`

    - #### createMethodInfo

          protected io.vertx.codegen.processor.MethodInfo createMethodInfo​(Set<io.vertx.codegen.processor.type.ClassTypeInfo> ownerTypes,
                                                                           String methodName,
                                                                           String comment,
                                                                           io.vertx.codegen.processor.doc.Doc doc,
                                                                           io.vertx.codegen.processor.type.TypeInfo returnType,
                                                                           io.vertx.codegen.processor.doc.Text returnDescription,
                                                                           boolean isFluent,
                                                                           boolean isCacheReturn,
                                                                           List<io.vertx.codegen.processor.ParamInfo> mParams,
                                                                           ExecutableElement methodElt,
                                                                           boolean isStatic,
                                                                           boolean isDefault,
                                                                           ArrayList<io.vertx.codegen.processor.TypeParamInfo.Method> typeParams,
                                                                           TypeElement declaringElt,
                                                                           boolean methodDeprecated,
                                                                           io.vertx.codegen.processor.doc.Text methodDeprecatedDesc,
                                                                           boolean methodOverride)

      Overrides:
        `createMethodInfo` in class `io.vertx.codegen.processor.ClassModel`