[ 
https://issues.apache.org/jira/browse/SLING-378?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Felix Meschberger updated SLING-378:
------------------------------------

    Description: 
Currently the Management Console URLs are not really REST-ful:

> To get a list of bundles you access /system/console/list. This should rather 
> be /system/console/bundles.
> To get bundle details the URL is /system/console/bundledetails with a request 
> property naming the bundle whose details are to be returned. This should 
> rather be /system/console/bundles/x where x is the bundleID or some other 
> identification of the bundle to access
> To start (or stop or uninstall) a bundle a request to /system/console with an 
> action parameter and a bundleId parameter is POSTed to the console. This 
> should rather use the bundle URL - /system/console/bundles/x as above - and 
> an action parameter denoting the action.
> It should be possible to directly access a certain configuration by URL such 
> as /system/console/configurations/<pid> where <pid> is the PID of the 
> configuration or access /system/console/configurations to get all 
> configurations.
> etc.

As a corollary to these changes the current interfaces Action and Render should 
be dropped and replaced by the venerable Servlet interface. This makes 
implementation of the URLs easier. On the downside, this might create big 
servlets for the HTML rendering, which might be solved by using helper classes.

The servlets will need to be registered as OSGi services with appropriate 
service registration properties. The Console will only pick up servlets 
registered with the correct property settings.

  was:
Currently the Management Console URLs are not really REST-ful:

> To get a list of bundles you access /system/console/list. This should rather 
> be /system/console/bundles.
> To get bundle details the URL is /system/console/bundledetails with a request 
> property naming the bundle whose details are to be returned. This should 
> rather be /system/console/bundles/x where x is the bundleID or some other 
> identification of the bundle to access
> To start (or stop or uninstall) a bundle a request to /system/console with an 
> action parameter and a bundleId parameter is POSTed to the console. This 
> should rather use the bundle URL - /system/console/bundles/x as above - and 
> an action parameter denoting the action.
> It should be possible to directly access a certain configuration by URL such 
> as /system/console/configurations/<pid> where <pid> is the PID of the 
> configuration or access /system/console/configurations to get all 
> configurations.
> etc.

As a corollary to these changes the current interfaces Action and Render should 
be dropped and replaced by the venerable Servlet interface. This makes 
implementation of the URLs easier. On the downside, this might create big 
servlets for the HTML rendering, which might be solved by using helper classes.


> Support proper URLs to access the functionality
> -----------------------------------------------
>
>                 Key: SLING-378
>                 URL: https://issues.apache.org/jira/browse/SLING-378
>             Project: Sling
>          Issue Type: Improvement
>          Components: Console
>            Reporter: Felix Meschberger
>
> Currently the Management Console URLs are not really REST-ful:
> > To get a list of bundles you access /system/console/list. This should 
> > rather be /system/console/bundles.
> > To get bundle details the URL is /system/console/bundledetails with a 
> > request property naming the bundle whose details are to be returned. This 
> > should rather be /system/console/bundles/x where x is the bundleID or some 
> > other identification of the bundle to access
> > To start (or stop or uninstall) a bundle a request to /system/console with 
> > an action parameter and a bundleId parameter is POSTed to the console. This 
> > should rather use the bundle URL - /system/console/bundles/x as above - and 
> > an action parameter denoting the action.
> > It should be possible to directly access a certain configuration by URL 
> > such as /system/console/configurations/<pid> where <pid> is the PID of the 
> > configuration or access /system/console/configurations to get all 
> > configurations.
> > etc.
> As a corollary to these changes the current interfaces Action and Render 
> should be dropped and replaced by the venerable Servlet interface. This makes 
> implementation of the URLs easier. On the downside, this might create big 
> servlets for the HTML rendering, which might be solved by using helper 
> classes.
> The servlets will need to be registered as OSGi services with appropriate 
> service registration properties. The Console will only pick up servlets 
> registered with the correct property settings.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to