from hard drive to restful universe: an add on to eclipse resource management
TRANSCRIPT
© SAP AG 2009, Licensed under EPL 1.0 1
From Hard Drive to RESTfulUniverse: An Add-on to Eclipse
Resource Management
Eduard Bartsch
SAP AG
© SAP AG 2009 An Add-on to Eclipse Resource Management 2
Agenda
Background
Proposed Solution
Demo
Next Steps
© SAP AG 2009 An Add-on to Eclipse Resource Management 3
Vision: Combine the Power of TwoWorlds
EclipseWorkspaceResource
EclipseWorkspaceResource
RemoteResource
RemoteResource
!Editors
ProjectExplorer
ProblemsView
Compare& Merge
ERPERP& Co& Co
ServiceRepository
ContentManagement
…
© SAP AG 2009 An Add-on to Eclipse Resource Management 4
Eclipse Workspace Resources vs. REST:Commonalities
Both cases are about Resources as keyabstraction:
–Resource is any information that can be named–Resources have state (that may change over time)–Resources expose uniform interface
EclipseWorkspaceResource
EclipseWorkspaceResource
RemoteResource
RemoteResource
© SAP AG 2009 An Add-on to Eclipse Resource Management 5
Eclipse Workspace Resources vs. REST:Differences
Hierarchic Content Structuring–Rather balanced and deepfile/folder trees
Content-independent StorageConcrete Well-defined APIsCollaboration Built-in
–Team Provider–Merge/Compare–Mylyn
Flat Content Structuring–E.g. with big amount ofresources beneath a root URL
(Often) Content-aware Storage
REST is Architectural Style andnot even a Network Protocol
Collaboration out of Scope–Has to be solved on top
EclipseWorkspaceResource
EclipseWorkspaceResource
RemoteResource
RemoteResource
© SAP AG 2009 An Add-on to Eclipse Resource Management 6
How to Bridge the Divide?
EclipseWorkspaceResource
EclipseWorkspaceResource
RemoteResource
RemoteResource
Editors
ProjectExplorer
ProblemsView
Compare& Merge
ERPERP& Co& Co
ServiceRepository
ContentManagement
…
SemanticFile
System
© SAP AG 2009 An Add-on to Eclipse Resource Management 7
Major Idea:Consequently Bridge Differences
Decouple Eclipse Resource Hierarchy from RESTURL hierarchySparsely mount REST resources into EclipseWorkspaceIntroduce an SPI and additional Content Providerin order to handle
–Differences between repository-specific RESTimplementations
–Repository-specific and content-specific semantics–Team & Collaboration support
© SAP AG 2009 An Add-on to Eclipse Resource Management 8
File System vs. Semantic File System
Normal Folder Source Repository
REST RepositorySemantic Folder
Resource
Subfolder
File
Subfolder
Resource
Subfolder
Resource
Resource
Resource
Resource
Resource
Subfolder
© SAP AG 2009 An Add-on to Eclipse Resource Management 9
Content Providers as Adapters forDifferent REST Repositories
Developer
EclipseEditor/Tool
EclipseResource
Management
ContentProviders
RESTRepository
<<works with>> <<works with>>
Resources
Codelines/Branches/Baselines
etc
Versions/Revisions
F( )«output» «input»
«represents a»
Project/Folder/
ResourceHierarchy
...Variants
SemanticFile System
© SAP AG '09, EPL1.0
An Add-on to Eclipse Resource Management 10
Semantic Content Provider Hierarchy
Content Providersmay
– be nested– have own
semantics
Default Content Provider
ContentProvider 2
ContentProvider 3
ContentProvider 1
File
Project
Folder
File
FileFile
File
File
File
Folder
Folder
Folder
© SAP AG 2009 An Add-on to Eclipse Resource Management 12
Next Steps
Further Discussions via Feature Request inEclipse Bugzilla:https://bugs.eclipse.org/bugs/show_bug.cgi?id=292197Concept Document uploaded into above BugReport:https://bugs.eclipse.org/bugs/attachment.cgi?id=150474Prototype Implementation will be published soonafter ESE