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