New Project from Repository
As a developer with a running Sling instance, I can create a local project in my IDE by extracting content from my running instance.
In Eclipse, this would be an Import wizard, somewhat similar to the way you can create a project by checking out from source control.
Link Project with Repository
As a developer with a project (on local disk storage) in my IDE, I can link that project with a running Sling instance.
For UI developers interacting with content in the repository it is critical that their development workflow does not get interrupted. In general UI work becomes hard if not impossible if there are delays of more than a few seconds between editing a page and viewing it in the browser.
- Time delay between editing a file in the IDE and seeing the results in the browser must be less than the time it takes to switch between IDE and browser and refresh.
- Once the environment is setup, the only action that should be necessary to re-deploy a change from IDE to the running server should be to save the file in the IDE.
- Environment setup should be simple only requiring a few steps.
- The time delay should not degrade noticeably with a subtree containing large numbers of files.
- Changes made in the repository should be reflected in the IDE with the same latency as from the IDE to the repository.
- Robert Munteanu - I am of the opinion that changes in the repository should only be manually pulled in the IDE, not automatically. What is there's a file I'm working on ( unsaved ) and a repository change happens for that file?
- Ideally it should be possible to edit repository properties within the IDE.
- For IDE development, it is not a requirement to support a remote Sling server that does not have access to the same file system the IDE has access to.
In Eclipse, this would be something like adding a Nature to a Project.
- The integration should not require 1000s of http requests to achieve the requirements above.
- ~jedelson It'd probably be better to phrase this in terms of performance than # of requests.
Put Single File
As a developer with a project in my IDE which is linked to a Sling instance, I can upload a single file to that running instance.
Pull Single File
As a developer with a project in my IDE which is linked to a Sling instance, I can pull a single file from that running instance.
Put Whole Directory (Recursive)
Pull Whole Directory (Recursive)