Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "Mylyn Task List"
(→Refactoring Objectives) |
|||
Line 5: | Line 5: | ||
*** repository configuration options stored in same file | *** repository configuration options stored in same file | ||
*** Configuration data is being updated upon load anyway | *** Configuration data is being updated upon load anyway | ||
− | ** Presentation information such as hidden/readonly status fields being persisted | + | ** Presentation information such as hidden/readonly status fields being persisted (put with configuration?) |
** Operations being included | ** Operations being included | ||
** Lazy loading | ** Lazy loading | ||
Line 19: | Line 19: | ||
*Repository Configuration | *Repository Configuration | ||
− | **Leave as responsibility of connector assuming a contract: | + | ** (option 1) Leave as responsibility of connector assuming a contract: |
− | **Provide IMemento upon startup as an option | + | ***Provide IMemento upon startup as an option? |
− | **Remote configuration gathered periodically | + | ***Remote configuration gathered periodically |
− | **Always available (even if repository is deleted, configuration sticks) | + | ***Always available (even if repository is deleted, configuration sticks) |
− | **Task data combined with configuration upon presentation rather than persistence | + | ***Given a configuration folder within .mylar to persist data (not ideal) |
+ | ***Task data combined with configuration upon presentation rather than persistence | ||
+ | ** (option 2) XML externalization | ||
+ | ***Available options per id (ie. taskdata.priority --> P1, P2, P3...) | ||
+ | ***Available options given a specific product selection <Attribute id="taskdata.components"><Value>Bugzilla</Value><Value>Core</Value> | ||
+ | ***Hidden/readonly status for attributes? | ||
+ | |||
+ | <RepositoryConfiguration> | ||
+ | |||
+ | <GeneralOptions id="...products" hidden="false" readonly="false"> | ||
+ | <Value>Mylar</Value> | ||
+ | <Value>Nebula</Value> | ||
+ | </GeneralOptions> | ||
+ | |||
+ | <ProductOptions> | ||
+ | <Product name="Mylar"> | ||
+ | <Options id="....os"> | ||
+ | <Value>MacOS</Value> | ||
+ | <Value default="true">Windows XP</Value> | ||
+ | <Options> | ||
+ | </Product> | ||
+ | </ProductOptions> | ||
+ | |||
+ | </RepositoryConfiguration> | ||
==XML File Formats== | ==XML File Formats== |
Revision as of 12:35, 24 October 2006
Refactoring Objectives
- Task Data Refactoring
- Currently not nomalized
- repository configuration options stored in same file
- Configuration data is being updated upon load anyway
- Presentation information such as hidden/readonly status fields being persisted (put with configuration?)
- Operations being included
- Lazy loading
- currently loaded at tasklist load time
- Could just have a flag indicating the existence of an offline file rather than load the data
- What does this break?
- Task Data Externalization
- Switch to XML
- Possibly use IMemento
- Separate files vs. one BIG file
- Consider zipping all the individual xml files together into one zip file (similar to Open Office file format ODF)
- Currently not nomalized
- Repository Configuration
- (option 1) Leave as responsibility of connector assuming a contract:
- Provide IMemento upon startup as an option?
- Remote configuration gathered periodically
- Always available (even if repository is deleted, configuration sticks)
- Given a configuration folder within .mylar to persist data (not ideal)
- Task data combined with configuration upon presentation rather than persistence
- (option 2) XML externalization
- Available options per id (ie. taskdata.priority --> P1, P2, P3...)
- Available options given a specific product selection <Attribute id="taskdata.components"><Value>Bugzilla</Value><Value>Core</Value>
- Hidden/readonly status for attributes?
- (option 1) Leave as responsibility of connector assuming a contract:
<RepositoryConfiguration>
<GeneralOptions id="...products" hidden="false" readonly="false"> <Value>Mylar</Value> <Value>Nebula</Value> </GeneralOptions>
<ProductOptions> <Product name="Mylar"> <Options id="....os"> <Value>MacOS</Value> <Value default="true">Windows XP</Value> <Options> </Product> </ProductOptions>
</RepositoryConfiguration>
XML File Formats
Proposed Repository Task Data
<TaskData version="1.0" taskId="1" repositoryUrl="http://bugs.eclipse.org/bugs" repositoryKind="Bugzilla" modifiedTs="timestamp">
<Attribute id="...priority" modifiedTs="timestamp" author="rob.elves"> <Value>xxx</Value> <Value>xxx</Value> <Value>xxx</Value> </Attribute>
<Comment hasAttachment="true" attachmentId="1"> <Attribute id="...author"> <Value>rob.evles</Value> </Attribute> </Comment>
<NewComment> My new comment </NewComment>
<Attachment id="1" isObsolete="false"> <Attribute id="...attachment_date"> <Value>date</Value> </Attribute> </Attachment>
</TaskData>