synapse-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Saminda Abeyruwan" <samin...@gmail.com>
Subject Re: get(String url) issues for getting external resources
Date Wed, 01 Mar 2006 11:02:34 GMT
+1

On 3/1/06, Paul Fremantle <pzfreo@gmail.com> wrote:
>
> How about this implementation of what you are describing.
>
> 1) Lets indirect this out of SynEnv:
>
> SynapseEnvironment {
>     ResourceHelper getResourceHelper();
> }
>
> public interface ResourceHelper {
>     OMElement get(String uri); // get a resource
>     OMElement get(String uri, ResourceUpdateAware mediator); // get a
> resource and be notified of changes
>     void registerResourceHandler(ResourceHandler rh, String urlRoot);
>          // register a handler for a given set of URLs (which share the
> same root)
>     void notifyUpdate(String uriRoot);
>          // a resource handler uses this to notify that all resources with
> that root have changed (Resource Push model)
> }
>
> public interface ResourceHandler {
>     OMElement get(String uri);
>
>     void setProperty(String name, String value);
>     String getProperty(String name);
>     String[] getPropertyNames();
>
>     boolean isUpdated(String uriRoot); // used to poll if resource has
> changed (Pull model)
> }
>
> <synapse.xml>
>
> <resource type="o.a.s.resources.HttpResource" uri-root="http://fremantle.org/resources/
> ">
>    <property name="http.username">paul</property>
>    <property name="http.password">pass</property>
>    <property name=" http.proxy">proxy:80</property>
> </resource>
>
> Paul
>
>
>
> On 3/1/06, Soumadeep < soumadeep@infravio.com> wrote:
> >
> > Paul is right, instead of passing an object we could have property files
> > which will have the connection related data. Further, we can generalize the
> > way the get method is implemented, what I mean is we can have an interface
> > like ResourceHandler so that others can implement it as required ...
> > something like LDAPResourceHandler implements ResourceHandler which will
> > have a get method and depending on what was configured the resource will be
> > fetched.
> >
> > We can put the property values in Synapse.xml, so you might end up
> > having multiple resource endpoints with property sets required for making a
> > connection, though we need to think about whether to provide the flexibility
> > in terms of mediators being able to call different ResourceHandlers for a
> > session.
> >
> > -Soumadeep
> >
> > -----Original Message-----
> > *From:* Paul Fremantle [mailto:pzfreo@gmail.com]
> > *Sent:* Tuesday, February 28, 2006 5:59 PM
> > *To:* synapse-dev@ws.apache.org
> > *Subject:* Re: get(String url) issues for getting external resources
> >
> > I think we should try to separate out the connection properties
> > associated with a URI and the mediators knowledge. So in other words lets
> > try to configure the mediator with the URI and the SynapseEnv with the
> > certs/uids/proxies, etc.
> >
> > Paul
> >
> > On 2/28/06, Saminda Abeyruwan <samindaa@gmail.com> wrote:
> > >
> > > Hi Devs,
> > >
> > > I have written a document on "how to configure mediators get resources
> > > via SSL connection".  This will address how to acquire resources from Axis2
> > > repository which is deployed on Tomcat.
> > >
> > > Thank you
> > >
> > > Saminda
> > >
> > > On 2/28/06, Saminda Abeyruwan < samindaa@gmail.com> wrote:
> > > >
> > > > On 2/27/06, Soumadeep <soumadeep@infravio.com> wrote:
> > > > >
> > > > > Hi all,
> > > > >
> > > > > To fetch external resources using Axis2SynapseEnvironment's
> > > > > get(String url)
> > > > > wouldn't suffice I think. For secured resources we might have to
> > > > > send the 1)
> > > > > username/password http token or 2)WS Sec token or maybe 3)
> > > > > certificates or
> > > > > 4) we might also have to deal with enc/decryption.
> > > >
> > > >
> > > > +1.  The  underline  transport mechanism for SynapesEnvironment.get(String)
> > > > uses HttpClient from commons-httpclient and it provides full support for
> > > > HTTP over SSL [1]. Thus, with minimum effort we can integrate it here.
But
> > > > to introduce authentication details we may need to insert  a bean into
> > > > SynapseEnvironment.get(String) and we may have to change the
> > > > signature as SynapseEnvironment.get(String url, Object
> > > > authentication). This will allow to get authentication details from run
> > > > time.
> > > >
> > > > More importantly, there might be a situation where the resource
> > > > > could be
> > > > > located in LDAP,Database or a file System.
> > > >
> > > >
> > > > Yes.  We need to figure this out. IMHO this is can be considered as
> > > > multiple issues.
> > > >
> > > > How do we handle situations where a parameter could be required by
> > > > > the
> > > > > resource server apart from what I have mentioned above? (HTTP GET
> > > > > maybe the
> > > > > only way out) but then there should be a way to configure what
> > > > > type of
> > > > > resource server it is and what details are required.
> > > >
> > > >
> > > > REST like invocation is the most simple yet the powerful way of
> > > > getting resources out a  repository.  So the  current implementation of
> > > > SynapseEnviroment.get(String) would defiantly do that. We can
> > > > integrate a very powerful lookup for this resources, if we uses Axis2's
> > > > ServiceClient (Once Axis2-0.95 releases) REST invocation mechanism.
> > > > But to  integrate this, we need to populate a Object and fill the right
> > > > information.
> > > >
> > > > IMHO, i guess commons-httpclient addresses most of  the problems
> > > > with regular and ssl connection.
> > > >
> > > > Thank you
> > > >
> > > > Saminda
> > > >
> > > > Resources: [1]. http://jakarta.apache.org/commons/httpclient/sslguide.html
> > > >
> > > >
> > > >
> > > > >
> > > > >
> > > > > ---------------------------------------------------------------------
> > > > >
> > > > > To unsubscribe, e-mail: synapse-dev-unsubscribe@ws.apache.org
> > > > > For additional commands, e-mail: synapse-dev-help@ws.apache.org
> > > > >
> > > > >
> > > >
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: synapse-dev-unsubscribe@ws.apache.org
> > > For additional commands, e-mail: synapse-dev-help@ws.apache.org
> > >
> > >
> > >
> >
> >
> > --
> > Paul Fremantle
> > VP/Technology, WSO2 and OASIS WS-RX TC Co-chair
> >
> > http://bloglines.com/blog/paulfremantle
> > paul@wso2.com
> >
> > "Oxygenating the Web Service Platform", www.wso2.com
> >
> >
>
>
> --
> Paul Fremantle
> VP/Technology, WSO2 and OASIS WS-RX TC Co-chair
>
> http://bloglines.com/blog/paulfremantle
> paul@wso2.com
>
> "Oxygenating the Web Service Platform", www.wso2.com
>

Mime
View raw message