View Javadoc

    1   package org.codehaus.xfire.service;
    2
    3   import org.codehaus.xfire.service.binding.ObjectBinding;
    4
    5
    6   /***
    7    * Defines the contract for classes that iterate over the <code>*Info</code> classes. Used to recurse into {@link
    8    * ServiceInfo}, {@link OperationInfo}, {@link MessageInfo}, etc.
    9    * <p/>
    10   * <strong>Note</strong> that implementations of this interface are not required to recurse themselves; instead, this is
    11   * handled by the various vistable implementations.
    12   *
    13   * @author <a href="mailto:poutsma@mac.com">Arjen Poutsma</a>
    14   * @see Visitable
    15   */
    16  public interface Visitor
    17  {
    18      /***
    19       * Receive notification at the beginning of a endpoint visit.
    20       *
    21       * @param endpoint the service endpoint.
    22       */
    23      void startEndpoint(Service endpoint);
    24
    25      /***
    26       * Receive notatification of the end of a endpoint visit.
    27       *
    28       * @param endpoint
    29       */
    30      void endEndpoint(Service endpoint);
    31
    32      /***
    33       * Receive notification at the beginning of a service visit.
    34       *
    35       * @param serviceInfo the service.
    36       */
    37      void startService(ServiceInfo serviceInfo);
    38
    39      /***
    40       * Receive notatification of the end of a service visit.
    41       *
    42       * @param serviceInfo
    43       */
    44      void endService(ServiceInfo serviceInfo);
    45
    46      /***
    47       * Receive notification at the beginning of a operation visit.
    48       *
    49       * @param operationInfo the operation.
    50       */
    51      void startOperation(OperationInfo operationInfo);
    52
    53      /***
    54       * Receive notification at the end of a operation visit.
    55       *
    56       * @param operationInfo the operation.
    57       */
    58      void endOperation(OperationInfo operationInfo);
    59
    60      /***
    61       * Receive notification at the beginning of a message visit.
    62       *
    63       * @param messageInfo the message.
    64       */
    65      void startMessage(MessageInfo messageInfo);
    66
    67      /***
    68       * Receive notification at the end of a message visit.
    69       *
    70       * @param messageInfo the message.
    71       */
    72      void endMessage(MessageInfo messageInfo);
    73
    74      /***
    75       * Receive notification at the beginning of a fault visit.
    76       *
    77       * @param faultInfo the fault.
    78       */
    79      void startFault(FaultInfo faultInfo);
    80
    81      /***
    82       * Receive notification at the end of a fault visit.
    83       *
    84       * @param faultInfo the fault.
    85       */
    86      void endFault(FaultInfo faultInfo);
    87
    88      /***
    89       * Receive notification at the beginning of a message part visit.
    90       *
    91       * @param messagePartInfo the message part info.
    92       */
    93      void startMessagePart(MessagePartInfo messagePartInfo);
    94
    95      /***
    96       * Receive notification at the end of a message part visit.
    97       *
    98       * @param messagePartInfo the message part info.
    99       */
    100     void endMessagePart(MessagePartInfo messagePartInfo);
    101
    102     /***
    103      * Receive notification at the beginning of a message header visit.
    104      *
    105      * @param messageHeaderInfo the message header info.
    106      */
    107     void startMessageHeader(MessageHeaderInfo messageHeaderInfo);
    108
    109     /***
    110      * Receive notification at the end of a message header visit.
    111      *
    112      * @param messageHeaderInfo the message header info.
    113      */
    114     void endMessageHeader(MessageHeaderInfo messageHeaderInfo);
    115
    116     /***
    117      * Receive notification at the beginning of a binding visit.
    118      *
    119      * @param binding the binding.
    120      */
    121     void startBinding(ObjectBinding binding);
    122
    123     /***
    124      * Receive notification at the end of a binding visit.
    125      *
    126      * @param binding the binding.
    127      */
    128     void endBinding(ObjectBinding binding);
    129 }