View Javadoc

1   /*
2    * $Id: EndpointURI.java 19191 2010-08-25 21:05:23Z tcarlson $
3    * --------------------------------------------------------------------------------------
4    * Copyright (c) MuleSoft, Inc.  All rights reserved.  http://www.mulesoft.com
5    *
6    * The software in this package is published under the terms of the CPAL v1.0
7    * license, a copy of which has been included with this distribution in the
8    * LICENSE.txt file.
9    */
10  
11  package org.mule.api.endpoint;
12  
13  import org.mule.api.MuleContext;
14  import org.mule.api.lifecycle.Initialisable;
15  
16  import java.io.Serializable;
17  import java.net.URI;
18  import java.util.Properties;
19  
20  /**
21   * <code>EndpointURI</code> is used to determine how a message is sent or
22   * received. The url defines the protocol, the endpointUri destination of the message
23   * and optionally the endpoint to use when dispatching the event. Mule urls take the
24   * form of - protocol://[host]:[port]/[provider]/endpointUri or
25   * protocol://[host]:[port]/endpointUri i.e. vm://my.object or
26   * The protocol can be any of any conector registered with Mule. The
27   * endpoint name if specified must be the name of a register global endpoint The
28   * endpointUri can be any endpointUri recognised by the endpoint type.
29   * 
30   */
31  public interface EndpointURI extends Serializable, Initialisable
32  {
33  
34      String PROPERTY_ENDPOINT_NAME = "endpointName";
35      String PROPERTY_ENDPOINT_URI = "address";
36      String PROPERTY_CONNECTOR_NAME = "connector";
37      String PROPERTY_TRANSFORMERS = "transformers";
38      String PROPERTY_RESPONSE_TRANSFORMERS = "responseTransformers";
39  
40      String getAddress();
41  
42      String getFilterAddress();
43  
44      /** 
45       * @deprecated This property is used by endpoint-identifiers, global-endpoints use ImmutableEndpoint.getName()
46       */
47      @Deprecated
48      String getEndpointName();
49  
50      Properties getParams();
51  
52      /**
53       * A reduced version of getParams() - drops some system parameters
54       */
55      Properties getUserParams();
56  
57      String getScheme();
58  
59      String getSchemeMetaInfo();
60  
61      String getFullScheme();
62  
63      String getAuthority();
64  
65      String getHost();
66  
67      int getPort();
68  
69      String getPath();
70  
71      String getQuery();
72  
73      String getUserInfo();
74  
75      String getTransformers();
76  
77      String getResponseTransformers();
78  
79      URI getUri();
80  
81      String getConnectorName();
82  
83      String getResourceInfo();
84  
85      String getUser();
86  
87      String getPassword();
88  
89      MuleContext getMuleContext();
90  }