Jump to: navigation, search

Difference between revisions of "Mylyn/Porting Guide"

(New Tasks API)
(Pending Changes for Mylyn 3.0)
Line 35: Line 35:
* Move highlighters stuff out of <code>ContextUiPlugin</code>
* Move highlighters stuff out of <code>ContextUiPlugin</code>
* Rename <code>AbstractRepositoryTaskEditor.SECTION_NAME.ATTRIBTUES_SECTION</code> ({{bug|208629}})
* Rename <code>AbstractRepositoryTaskEditor.SECTION_NAME.ATTRIBTUES_SECTION</code> ({{bug|208629}})
* Move to using the new public URLTransfer {{bug|100095}}
== New Tasks API ==  
== New Tasks API ==  

Revision as of 01:42, 16 November 2007

This document will have Mylar 2.0 specific API changes added to it as we make them. If interested in keeping up with these changes we suggest setting a watch for this page. Note that changes involving classes moving packages are not listed, use Organize Imports to resolve.

Porting from 1.0 to 2.0

See the Mylyn Porting Guide 2.0

Porting from 2.0 to 3.0

There is currently no need to port Mylyn from the 2.0 APIs since current Mylyn releases are backwards compatible. Throughout the 2.x release cycle we will be using this wiki to gather changes and suggestions for improving the APIs for 3.0.

Pending Changes for Mylyn 3.0

Also see all tags of "API-3.0"

  • Rename AbstractRepositoryQuery.getRepositoryKind() to AbstractRepositoryQuery.getConnectorKind()
  • Rename IMylarMonitorLifecycleListener to IMonitorLifecycleListener
  • Rename MockRepositoryTask to MockTask
  • Refactor TaskActivationHistory into a TaskActivityManager that encapsulates both activity monitoring and activation history
    • Remove all deprecated methods from TaskListManager
  • AbstractTaskListPresentation: make API, remove coupling to TaskListView
  • TaskGroup and TaskCategory: consider for API, refactor or combine
  • consider merging TaskList.removeFromCategory() and TaskList.removeFromQuery()
  • Deprecate WebClientUtil.getPlatformProxy()
  • Move TasksUiPlugin.getIncomingNotification(..) and related private classes
  • AbstractTask.setCompleted() needs changing, it has the problematic side effect of setting the completion date to the current time. bug 203875
  • Remove AbstractInterestManipulationAction.isRemove(): deprecated
  • Make IMonitoredWindow API and put alongside IContextAwareEditor
  • merge AbstractRepositoryTaskEditor.createAttributeSection into createAttributeLayout()
  • Make API: InteractionContextScaling
  • Rename AbstractTask.RepositoryTaskSyncState to AbstractTask.SyncState ("sync" is used commonly enough that we should be able to standardize on it in the API, replacing "synchronization/synchronize" where applicable).
  • Add InteractionContextScaling parameter to IInteractionContextReader.readContext(..)
  • Make a subset of InteractionContextManager API.
  • Make AbstractContextUiPlugin API.
  • Make TaskRepository.getUserName(), getHttpUser and getProxyUsername consistent
  • Move highlighters stuff out of ContextUiPlugin
  • Rename AbstractRepositoryTaskEditor.SECTION_NAME.ATTRIBTUES_SECTION (bug 208629)
  • Move to using the new public URLTransfer bug 100095

New Tasks API

  • AbstractEditQueryWizard
    • getQuerySummary(): added
  • AbstractRepositoryConnector
    • isRepositoryConfigurationStale(TaskRepository) has been added
  • AbstractRepositoryConnectorUi
    • getNewTaskWizard(TaskRepository, TaskSelection) has been added
  • AbstractRenderingEngine has been added for converting Wiki syntax to HTML
  • AbstractRepositoryQueryPage
    • setControlsEnabled(...): added - override to perform finer grain enablements if necessary
  • AbstractRepositoryTaskEditor has been extended to provide HTML preview capabilities for repositories that support Wiki syntax in ticket descriptions and comments
    • addSelectableControl(): added
    • createReplyHyperlink() is now protected (was private)
    • DescriptionListener is now protected (was private)
    • getParentEditor(): added
    • getRenderingEngine(): added
    • removeSelectableControl(): added
    • fillToolBar(..): added
  • AbstractUserActivityMonitor
    • isEnabled(): added
    • getOriginId(): added
    • getStructureKind(): added
    • getStructureHandle(): added
  • AbstractTaskDataHandler
    • cloneTaskData(RepositoryTaskData, RepositoryTaskData): added
  • RepositoryTaskAttribute
    • task.common.user.reporter.name : added : key for full name of issue reporter
    • task.common.comment.author.name : added : key for full name of comment author
    • task.common.user.assigned.name : added : key for full name of issue assignee
  • TaskEditor
    • class no longer final (experimental extensibility)
  • TaskListManager
    • resolveIdentifiersConflict(): added
    • removeFromQuery(): added
  • TaskSelection has been added
  • TaskTextViewerConfiguration has been added (former name was RepositoryViewerConfig)

New Context API

  • AbstractFocusViewAction.updateEnablementWithContextActivation(): override to return false for focus actions that are not related to context activations (e.g. the Task List).
  • AbstractFocusViewAction.setLinkingActionEnabled(boolean): should be overridden if view provides linking
  • InteractionContextScaling.getScaling(): new method, prevoiusly on subtype only

New Montior API

  • MonitorUiPlugin.getMonitoredWindows(): use insteand of PlatformUI.getWorkbench().getWorkbenchWindows()
  • MonitorUiPlugin.getLaunchingWorkbenchWindow(): use to get the first active window when the monitor started.