Jump to: navigation, search

Difference between revisions of "DSDP/MTJ/Requirements/Library Support"

< DSDP‎ | MTJ‎ | Requirements
(ID: library:FR002 - Extension point for library definition)
(ID: library:FR002 - Extension point for library definition)
 
(11 intermediate revisions by the same user not shown)
Line 5: Line 5:
 
==='''ID''': library:FR001 - Library representation===
 
==='''ID''': library:FR001 - Library representation===
 
'''Description:''' It is necessary to define a API representation for the Libraries that will be provided by 3rd party vendors.
 
'''Description:''' It is necessary to define a API representation for the Libraries that will be provided by 3rd party vendors.
*Each library will be composed by the following members:
+
 
 +
Each library will be composed by the following members:
 +
<div style="border: 2px solid #808080; padding: 6px; background: #FFF8E7;">
 +
 
 +
 
 +
* Name
 +
* Description
 +
* Version
 +
* '''Security''' (0 - 1)
 +
** Protection Domain
 +
** Permissions
 +
* '''License''' (1 - 1)
 
** Name
 
** Name
** Description
+
** Url
** Version
+
*'''ClasspathEntries''' (1 - *)
** '''License''' (1 - 1)
+
**Jar File Path
*** Name
+
**Javadoc Path
*** Url
+
**Source Path
**'''ClasspathEntries''' (1 - *)
+
**'''AccessRule''' (0 - *)
***Jar File Path
+
***Kind
***Javadoc Path
+
***Pattern
***Source Path
+
 
***'''AccessRule''' (0 - *)
+
 
****Kind
+
</div>
****Pattern
+
 
  
 
'''Priority:''' 3
 
'''Priority:''' 3
Line 41: Line 52:
  
 
*'''library'''
 
*'''library'''
** <font color="green"><b>Name</b></font> (String Attribute) [Required]
+
** <font color="green"><b>Name</b></font> (String Attribute) <font color="#960018"><b>[Required]</b></font>
** <font color="green"><b>Description</b></font> (String Attribute) [Required]
+
** <font color="green"><b>Description</b></font> (String Attribute) <font color="#960018"><b>[Optional]</b></font>
** <font color="green"><b>Version</b></font> (String Attribute) [Optional]
+
** <font color="green"><b>Version</b></font> (String Attribute) <font color="#960018"><b>[Required]</b></font>
 
** '''''Sequence compositor'''''
 
** '''''Sequence compositor'''''
 
*** <font color="blue">ClasspathEntries</font> (Element reference) ('''1 - *''')
 
*** <font color="blue">ClasspathEntries</font> (Element reference) ('''1 - *''')
 
*** <font color="blue">License</font> (Element reference) ('''1 - 1''')
 
*** <font color="blue">License</font> (Element reference) ('''1 - 1''')
 +
*** <font color="blue">Security</font> (Element reference) ('''0 - 1''')
 +
 +
 +
* '''Security'''
 +
** <font color="green"><b>Protection Domain</b></font> (String Attribute) (''MANUFACTURER'' | ''OPERATOR'' | ''THIRD_PARTY'' | ''UNTRUSTED'') <font color="#960018"><b>[Optional]</b></font>
 +
** <font color="green"><b>Permissions</b></font> (String Attribute) <font color="#960018"><b>[Optional]</b></font>
  
  
 
* '''License'''
 
* '''License'''
** <font color="green"><b>Name</b></font> (String Attribute) [Required]
+
** <font color="green"><b>Name</b></font> (String Attribute) <font color="#960018"><b>[Required]</b></font>
** <font color="green"><b>Url</b></font> (String Attribute) [Required]
+
** <font color="green"><b>Url</b></font> (String Attribute) <font color="#960018"><b>[Required]</b></font>
  
  
 
*'''AccessRule'''
 
*'''AccessRule'''
**<font color="green"><b>Kind</b></font> (String Attribute) (''ACCESSIBLE'' | ''NON_ACCESSIBLE'' | ''DISCOURAGED'' ) [Required]
+
**<font color="green"><b>Kind</b></font> (String Attribute) (''ACCESSIBLE'' | ''NON_ACCESSIBLE'' | ''DISCOURAGED'' ) <font color="#960018"><b>[Required]</b></font>
**<font color="green"><b>Pattern</b></font> (String Attribute) [Required]
+
**<font color="green"><b>Pattern</b></font> (String Attribute) <font color="#960018"><b>[Required]</b></font>
  
  
 
*'''ClasspathEntries'''
 
*'''ClasspathEntries'''
**<font color="green"><b>Jar File Path</b></font> (Resource Attribute) [Required]
+
**<font color="green"><b>Jar File Path</b></font> (Resource Attribute) <font color="#960018"><b>[Required]</b></font>
**<font color="green"><b>Javadoc Path</b></font> (Resource Attribute) [Optional]
+
**<font color="green"><b>Javadoc Path</b></font> (Resource Attribute) <font color="#960018"><b>[Optional]</b></font>
**<font color="green"><b>Source Path</b></font> (Resource Attribute) [Optional]
+
**<font color="green"><b>Source Path</b></font> (Resource Attribute) <font color="#960018"><b>[Optional]</b></font>
 
** '''''Sequence compositor''''' ('''0 - *''')
 
** '''''Sequence compositor''''' ('''0 - *''')
 
*** <font color="blue">AccessRule</font> (Element reference)
 
*** <font color="blue">AccessRule</font> (Element reference)
Line 95: Line 112:
 
'''Related Bugs:''' {{bug|250441}}
 
'''Related Bugs:''' {{bug|250441}}
 
----
 
----
 +
 
==='''ID''': library:FR004 - Library ClasspathContainer===
 
==='''ID''': library:FR004 - Library ClasspathContainer===
 
'''Description:''' A ClasspathContainer  to store the libraries the user selected to be used in the project must be created. Each library will have it own ClasspathContainer in the project.
 
'''Description:''' A ClasspathContainer  to store the libraries the user selected to be used in the project must be created. Each library will have it own ClasspathContainer in the project.
Line 128: Line 146:
  
 
'''Related Bugs:''' {{bug|249824}}
 
'''Related Bugs:''' {{bug|249824}}
----  
+
 
 +
'''Related Images:''' [https://bugs.eclipse.org/bugs/attachment.cgi?id=116837  Library Wizard Page]
 +
----
 +
 
 
==='''ID''': library:FR006 - User must be able to select libraries through project property page===
 
==='''ID''': library:FR006 - User must be able to select libraries through project property page===
  
Line 142: Line 163:
  
 
'''Related Bugs:''' {{bug|250434}}
 
'''Related Bugs:''' {{bug|250434}}
 +
 +
'''Related Images:''' [https://bugs.eclipse.org/bugs/attachment.cgi?id=116839  Library property Page]
 
----  
 
----  
  
 
[[Category:DSDP]] [[Category:MTJ]]
 
[[Category:DSDP]] [[Category:MTJ]]

Latest revision as of 16:58, 3 November 2008

Core

This section lists the main core requirements for the Library Support feature.

ID: library:FR001 - Library representation

Description: It is necessary to define a API representation for the Libraries that will be provided by 3rd party vendors.

Each library will be composed by the following members:


  • Name
  • Description
  • Version
  • Security (0 - 1)
    • Protection Domain
    • Permissions
  • License (1 - 1)
    • Name
    • Url
  • ClasspathEntries (1 - *)
    • Jar File Path
    • Javadoc Path
    • Source Path
    • AccessRule (0 - *)
      • Kind
      • Pattern



Priority: 3

Owner: Diego Sandin

Status:Proposed on 20-Oct-2008

Community Review: TBD

Related Bugs: bug 249823


ID: library:FR002 - Extension point for library definition

Description: An Extension Point were 3rd party vendors can provide libraries to be used by MTJ users must be defined.

The extension point will be composed by the following elements:


  • library
    • Name (String Attribute) [Required]
    • Description (String Attribute) [Optional]
    • Version (String Attribute) [Required]
    • Sequence compositor
      • ClasspathEntries (Element reference) (1 - *)
      • License (Element reference) (1 - 1)
      • Security (Element reference) (0 - 1)


  • Security
    • Protection Domain (String Attribute) (MANUFACTURER | OPERATOR | THIRD_PARTY | UNTRUSTED) [Optional]
    • Permissions (String Attribute) [Optional]


  • License
    • Name (String Attribute) [Required]
    • Url (String Attribute) [Required]


  • AccessRule
    • Kind (String Attribute) (ACCESSIBLE | NON_ACCESSIBLE | DISCOURAGED ) [Required]
    • Pattern (String Attribute) [Required]


  • ClasspathEntries
    • Jar File Path (Resource Attribute) [Required]
    • Javadoc Path (Resource Attribute) [Optional]
    • Source Path (Resource Attribute) [Optional]
    • Sequence compositor (0 - *)
      • AccessRule (Element reference)



Priority: 3

Owner: Diego Sandin

Status:Proposed on 20-Oct-2008

Community Review: TBD

Related Bugs: bug 250438


ID: library:FR003 - Library Manager

Description: A library manager in the core components to handle all implementations of the provided Extension Point must be created.

Priority: 3

Owner: Diego Sandin

Status:Proposed on 20-Oct-2008

Community Review: TBD

Related Bugs: bug 250441


ID: library:FR004 - Library ClasspathContainer

Description: A ClasspathContainer to store the libraries the user selected to be used in the project must be created. Each library will have it own ClasspathContainer in the project.

Priority: 3

Owner: Diego Sandin

Status:Proposed on 20-Oct-2008

Community Review: TBD

Related Bugs: bug 250467



User Interface

This section lists the main User Interface requirements for the Library Support feature.

ID: library:FR005 - User must be able to select libraries through project wizard

Description: project wizard need to allow the user to select the libraries that will be included on that project.

 The wizard page where the user may select the libraries will be displayed only if at least 1 library is  available.

Priority: 3

Owner: Diego Sandin

Status:Proposed on 20-Oct-2008

Community Review: TBD

Related Bugs: bug 249824

Related Images: Library Wizard Page


ID: library:FR006 - User must be able to select libraries through project property page

Description: A library property page need to allow the user to select the libraries that will be included on that project.

Priority: 3

Owner: Diego Sandin

Status:Proposed on 20-Oct-2008

Community Review: TBD

Related Bugs: bug 250434

Related Images: Library property Page