Difference between revisions of "Mylyn Task List"

From Eclipsepedia

Jump to: navigation, search
(Refactoring Objectives)
(Refactoring Objectives)
Line 7: Line 7:
 
** Presentation information such as hidden/readonly status fields being persisted  (put with configuration?)
 
** Presentation information such as hidden/readonly status fields being persisted  (put with configuration?)
 
** Operations being included
 
** 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
 
**Task Data Externalization
 
*** Switch to XML
 
*** Switch to XML
Line 17: Line 13:
 
*** Consider zipping all the individual xml files together into one zip file (similar to Open Office file format ODF)
 
*** Consider zipping all the individual xml files together into one zip file (similar to Open Office file format ODF)
  
 +
* 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?
  
 
*Repository Configuration
 
*Repository Configuration

Revision as of 12:36, 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
    • 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)
  • 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?
  • 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?
<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>