Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[2.0] Abstract sources #302

Closed
carbontwelve opened this issue Feb 23, 2018 · 1 comment
Closed

[2.0] Abstract sources #302

carbontwelve opened this issue Feb 23, 2018 · 1 comment
Assignees
Milestone

Comments

@carbontwelve
Copy link
Member

The File entity that is used throughout Tapesty has been slimmed down and refactored to a ProjectFile class as per #284.

To enable alternative sources such as database, web api or programmatic the ProjectFile entity should be abstracted into a project entity interface. That interface can then be implemented by a base AbstractEntity which could then be extended by final classes such as: FilesystemSourceProjectFile, DatabaseSourceProjectFile, etc.

Source collectors could then be registered via configuration to fill the project entity table, with the default collector being FilesystemCollector.

Doing this would allow Tapestry to collect from a variety of sources and while the most useful use case is filesystem, it would make writing a management dashboard easier if it could read directly from a database.

@carbontwelve
Copy link
Member Author

Abstract sources have been implemented as part of issue #297

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant