You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sling.apache.org by "Felix Meschberger (JIRA)" <ji...@apache.org> on 2007/10/02 10:38:50 UTC

[jira] Created: (SLING-28) Simplify the Sling (aka Component) API

Simplify the Sling (aka Component) API
--------------------------------------

                 Key: SLING-28
                 URL: https://issues.apache.org/jira/browse/SLING-28
             Project: Sling
          Issue Type: Improvement
          Components: API
            Reporter: Felix Meschberger
            Priority: Blocker
             Fix For: 2.0.0


JIRA issue to track simplification of the Sling (aka Component) API.

See http://www.mail-archive.com/sling-dev@incubator.apache.org/msg00177.html for the discussion on the mailing list.

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


[jira] Issue Comment Edited: (SLING-28) Simplify the Sling (aka Component) API

Posted by "Felix Meschberger (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/SLING-28?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12531716 ] 

fmeschbe edited comment on SLING-28 at 10/2/07 1:51 AM:
-----------------------------------------------------------------

Commited first proposal in Rev. 581158 as project sling-app in trunk.

The new API can be summarized as follows:

  - The API is renamed to Sling API and all prefixes changed to Sling...
  - Moved the API to the root Sling package org.apache.sling
  - The Component interfaces has been dropped and replaced by just using the Servlet interface
  - An abstract SlingServlet is added, which has a method taking SlingRequest and SlingResponse
  - No special Context and Session implementation any more (just use the ServletContext and HttpSession)
  - SlingResponse is empty: getNamespace is dropped, the other methods are Servlet API 2.4 replicas
  - Require Servlet API 2.4
  - Use servlet name (Servlet.getServletName) as identifier of servlets for Sling
  - Rename Content.getComponentId() to Content.getServletName() method referring to handling servlet

Up for discussion ....

      was (Author: fmeschbe):
    Commited first proposal in Rev. 581158 as project sling-app in trunk.

The new API can be summarized as follows:

  - The API is renamed to Sling API and all prefixes changed to Sling...
  - The Component interfaces has been dropped and replaced by just using the Servlet interface
  - An abstract SlingServlet is added, which has a method taking SlingRequest and SlingResponse
  - No special Context and Session implementation any more (just use the ServletContext and HttpSession)
  - SlingResponse is empty: getNamespace is dropped, the other methods are Servlet API 2.4 replicas
  - Require Servlet API 2.4
  - Use servlet name (Servlet.getServletName) as identifier of servlets for Sling
  - Rename Content.getComponentId() to Content.getServletName() method referring to handling servlet

Up for discussion ....
  
> Simplify the Sling (aka Component) API
> --------------------------------------
>
>                 Key: SLING-28
>                 URL: https://issues.apache.org/jira/browse/SLING-28
>             Project: Sling
>          Issue Type: Improvement
>          Components: API
>            Reporter: Felix Meschberger
>            Priority: Blocker
>             Fix For: 2.0.0
>
>
> JIRA issue to track simplification of the Sling (aka Component) API.
> See http://www.mail-archive.com/sling-dev@incubator.apache.org/msg00177.html for the discussion on the mailing list.

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


[jira] Closed: (SLING-28) Simplify the Sling (aka Component) API

Posted by "Felix Meschberger (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/SLING-28?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Felix Meschberger closed SLING-28.
----------------------------------

    Resolution: Fixed

After many iterations and additions, the Sling API has now been submitted to a vote [1]. So I close this issue.

If anything new surfaces regarding the Sling API, new issues should be created.

[1] http://mail-archives.apache.org/mod_mbox/incubator-sling-dev/200711.mbox/%3c1193992693.12650.28.camel@bslm-046.corp.day.com%3e

> Simplify the Sling (aka Component) API
> --------------------------------------
>
>                 Key: SLING-28
>                 URL: https://issues.apache.org/jira/browse/SLING-28
>             Project: Sling
>          Issue Type: Improvement
>          Components: API
>            Reporter: Felix Meschberger
>            Assignee: Felix Meschberger
>            Priority: Blocker
>             Fix For: 2.0.0
>
>
> JIRA issue to track simplification of the Sling (aka Component) API.
> See http://www.mail-archive.com/sling-dev@incubator.apache.org/msg00177.html for the discussion on the mailing list.

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


[jira] Assigned: (SLING-28) Simplify the Sling (aka Component) API

Posted by "Felix Meschberger (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/SLING-28?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Felix Meschberger reassigned SLING-28:
--------------------------------------

    Assignee: Felix Meschberger

> Simplify the Sling (aka Component) API
> --------------------------------------
>
>                 Key: SLING-28
>                 URL: https://issues.apache.org/jira/browse/SLING-28
>             Project: Sling
>          Issue Type: Improvement
>          Components: API
>            Reporter: Felix Meschberger
>            Assignee: Felix Meschberger
>            Priority: Blocker
>             Fix For: 2.0.0
>
>
> JIRA issue to track simplification of the Sling (aka Component) API.
> See http://www.mail-archive.com/sling-dev@incubator.apache.org/msg00177.html for the discussion on the mailing list.

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


[jira] Commented: (SLING-28) Simplify the Sling (aka Component) API

Posted by "Felix Meschberger (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/SLING-28?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12531716 ] 

Felix Meschberger commented on SLING-28:
----------------------------------------

Commited first proposal in Rev. 581158 as project sling-app in trunk.

The new API can be summarized as follows:

  - The API is renamed to Sling API and all prefixes changed to Sling...
  - The Component interfaces has been dropped and replaced by just using the Servlet interface
  - An abstract SlingServlet is added, which has a method taking SlingRequest and SlingResponse
  - No special Context and Session implementation any more (just use the ServletContext and HttpSession)
  - SlingResponse is empty: getNamespace is dropped, the other methods are Servlet API 2.4 replicas
  - Require Servlet API 2.4
  - Use servlet name (Servlet.getServletName) as identifier of servlets for Sling
  - Rename Content.getComponentId() to Content.getServletName() method referring to handling servlet

Up for discussion ....

> Simplify the Sling (aka Component) API
> --------------------------------------
>
>                 Key: SLING-28
>                 URL: https://issues.apache.org/jira/browse/SLING-28
>             Project: Sling
>          Issue Type: Improvement
>          Components: API
>            Reporter: Felix Meschberger
>            Priority: Blocker
>             Fix For: 2.0.0
>
>
> JIRA issue to track simplification of the Sling (aka Component) API.
> See http://www.mail-archive.com/sling-dev@incubator.apache.org/msg00177.html for the discussion on the mailing list.

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


[jira] Commented: (SLING-28) Simplify the Sling (aka Component) API

Posted by "Felix Meschberger (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/SLING-28?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12537885 ] 

Felix Meschberger commented on SLING-28:
----------------------------------------

Updated the sling-api project with the latest findings of working on microsling in Rev. 588574

Refer to the sling-dev list for discussion on this issue.

> Simplify the Sling (aka Component) API
> --------------------------------------
>
>                 Key: SLING-28
>                 URL: https://issues.apache.org/jira/browse/SLING-28
>             Project: Sling
>          Issue Type: Improvement
>          Components: API
>            Reporter: Felix Meschberger
>            Assignee: Felix Meschberger
>            Priority: Blocker
>             Fix For: 2.0.0
>
>
> JIRA issue to track simplification of the Sling (aka Component) API.
> See http://www.mail-archive.com/sling-dev@incubator.apache.org/msg00177.html for the discussion on the mailing list.

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


Re: [jira] Issue Comment Edited: (SLING-28) Simplify the Sling (aka Component) API

Posted by Carsten Ziegeler <cz...@apache.org>.
Felix Meschberger wrote:
> Thanks :-) I am currently working on a longer mail explaining the
> changes. But here is, what I have to say to this.
Ah, sorry - so I'll wait with further comments for that one.

> 
> 
>> - RequestParameter and RPMap are in a sub package while RequestPathInfo
>> is not. As they both contain additional request information, I think
>> they should either be all three in the core package or all three in the
>> same sub package.
> 
> How about placing all three into the o.a.s.request package ?
Ok.

> 
>> - I think we should move the request and response wrapper into a sub
>> package as usually a developer does not need them.
> 
> True, but I would like to keep them in the same place. The respective
> Serlvet API wrappers are also in the same package as their interface
> counterparts.
Ah, yes, right - ok we can leave them there, it's not a big deal.

>> - I'm not sure if "helpers" is a good name for its contents (but I'm
>> currently lacking a better name)
> 
> This name is inherited from the microsling project because I didn't have
> a better name either and I didn't want to place the contents in the
> o.a.s root package.
:)

We could put them also in the o.a.s.request package as these are special
request "things".

Carsten

-- 
Carsten Ziegeler
cziegeler@apache.org

Re: [jira] Issue Comment Edited: (SLING-28) Simplify the Sling (aka Component) API

Posted by Felix Meschberger <fm...@gmail.com>.
Am Freitag, den 26.10.2007, 11:34 +0200 schrieb Carsten Ziegeler:
> The api looks good to me, but :) I have some minor comments:

Thanks :-) I am currently working on a longer mail explaining the
changes. But here is, what I have to say to this.


> - RequestParameter and RPMap are in a sub package while RequestPathInfo
> is not. As they both contain additional request information, I think
> they should either be all three in the core package or all three in the
> same sub package.

How about placing all three into the o.a.s.request package ?

> - I think we should move the request and response wrapper into a sub
> package as usually a developer does not need them.

True, but I would like to keep them in the same place. The respective
Serlvet API wrappers are also in the same package as their interface
counterparts.

> 
> - RequestPathInfo#getSelector(int) is imho not need. To get the number
> of selectors I have to call getSelectors() which returns all and if I
> want to iterate of the selectors I can just directly call getSelectors().

Agreed. This method is probably not worth it :-)

> - I'm not sure if "helpers" is a good name for its contents (but I'm
> currently lacking a better name)

This name is inherited from the microsling project because I didn't have
a better name either and I didn't want to place the contents in the
o.a.s root package.

Regards
Felix


Re: [jira] Issue Comment Edited: (SLING-28) Simplify the Sling (aka Component) API

Posted by Carsten Ziegeler <cz...@apache.org>.
The api looks good to me, but :) I have some minor comments:

- RequestParameter and RPMap are in a sub package while RequestPathInfo
is not. As they both contain additional request information, I think
they should either be all three in the core package or all three in the
same sub package.

- I think we should move the request and response wrapper into a sub
package as usually a developer does not need them.

- RequestPathInfo#getSelector(int) is imho not need. To get the number
of selectors I have to call getSelectors() which returns all and if I
want to iterate of the selectors I can just directly call getSelectors().

- I'm not sure if "helpers" is a good name for its contents (but I'm
currently lacking a better name)

Carsten


Felix Meschberger (JIRA) wrote:
>     [ https://issues.apache.org/jira/browse/SLING-28?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12531716 ] 
> 
> fmeschbe edited comment on SLING-28 at 10/26/07 2:17 AM:
> ------------------------------------------------------------------
> 
> Commited first proposal in Rev. 581158 as project sling-api in trunk.
> 
> The new API can be summarized as follows:
> 
>   - The API is renamed to Sling API and all prefixes changed to Sling...
>   - Moved the API to the root Sling package org.apache.sling
>   - The Component interfaces has been dropped and replaced by just using the Servlet interface
>   - An abstract SlingServlet is added, which has a method taking SlingRequest and SlingResponse
>   - No special Context and Session implementation any more (just use the ServletContext and HttpSession)
>   - SlingResponse is empty: getNamespace is dropped, the other methods are Servlet API 2.4 replicas
>   - Require Servlet API 2.4
>   - Use servlet name (Servlet.getServletName) as identifier of servlets for Sling
>   - Rename Content.getComponentId() to Content.getServletName() method referring to handling servlet
> 
> Up for discussion ....
> 
>       was (Author: fmeschbe):
>     Commited first proposal in Rev. 581158 as project sling-app in trunk.
> 
> The new API can be summarized as follows:
> 
>   - The API is renamed to Sling API and all prefixes changed to Sling...
>   - Moved the API to the root Sling package org.apache.sling
>   - The Component interfaces has been dropped and replaced by just using the Servlet interface
>   - An abstract SlingServlet is added, which has a method taking SlingRequest and SlingResponse
>   - No special Context and Session implementation any more (just use the ServletContext and HttpSession)
>   - SlingResponse is empty: getNamespace is dropped, the other methods are Servlet API 2.4 replicas
>   - Require Servlet API 2.4
>   - Use servlet name (Servlet.getServletName) as identifier of servlets for Sling
>   - Rename Content.getComponentId() to Content.getServletName() method referring to handling servlet
> 
> Up for discussion ....
>   
>> Simplify the Sling (aka Component) API
>> --------------------------------------
>>
>>                 Key: SLING-28
>>                 URL: https://issues.apache.org/jira/browse/SLING-28
>>             Project: Sling
>>          Issue Type: Improvement
>>          Components: API
>>            Reporter: Felix Meschberger
>>            Assignee: Felix Meschberger
>>            Priority: Blocker
>>             Fix For: 2.0.0
>>
>>
>> JIRA issue to track simplification of the Sling (aka Component) API.
>> See http://www.mail-archive.com/sling-dev@incubator.apache.org/msg00177.html for the discussion on the mailing list.
> 


-- 
Carsten Ziegeler
cziegeler@apache.org

[jira] Issue Comment Edited: (SLING-28) Simplify the Sling (aka Component) API

Posted by "Felix Meschberger (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/SLING-28?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12531716 ] 

fmeschbe edited comment on SLING-28 at 10/26/07 2:17 AM:
------------------------------------------------------------------

Commited first proposal in Rev. 581158 as project sling-api in trunk.

The new API can be summarized as follows:

  - The API is renamed to Sling API and all prefixes changed to Sling...
  - Moved the API to the root Sling package org.apache.sling
  - The Component interfaces has been dropped and replaced by just using the Servlet interface
  - An abstract SlingServlet is added, which has a method taking SlingRequest and SlingResponse
  - No special Context and Session implementation any more (just use the ServletContext and HttpSession)
  - SlingResponse is empty: getNamespace is dropped, the other methods are Servlet API 2.4 replicas
  - Require Servlet API 2.4
  - Use servlet name (Servlet.getServletName) as identifier of servlets for Sling
  - Rename Content.getComponentId() to Content.getServletName() method referring to handling servlet

Up for discussion ....

      was (Author: fmeschbe):
    Commited first proposal in Rev. 581158 as project sling-app in trunk.

The new API can be summarized as follows:

  - The API is renamed to Sling API and all prefixes changed to Sling...
  - Moved the API to the root Sling package org.apache.sling
  - The Component interfaces has been dropped and replaced by just using the Servlet interface
  - An abstract SlingServlet is added, which has a method taking SlingRequest and SlingResponse
  - No special Context and Session implementation any more (just use the ServletContext and HttpSession)
  - SlingResponse is empty: getNamespace is dropped, the other methods are Servlet API 2.4 replicas
  - Require Servlet API 2.4
  - Use servlet name (Servlet.getServletName) as identifier of servlets for Sling
  - Rename Content.getComponentId() to Content.getServletName() method referring to handling servlet

Up for discussion ....
  
> Simplify the Sling (aka Component) API
> --------------------------------------
>
>                 Key: SLING-28
>                 URL: https://issues.apache.org/jira/browse/SLING-28
>             Project: Sling
>          Issue Type: Improvement
>          Components: API
>            Reporter: Felix Meschberger
>            Assignee: Felix Meschberger
>            Priority: Blocker
>             Fix For: 2.0.0
>
>
> JIRA issue to track simplification of the Sling (aka Component) API.
> See http://www.mail-archive.com/sling-dev@incubator.apache.org/msg00177.html for the discussion on the mailing list.

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