Cílem této práce je vytvořit rozšíření pro úložiště komponent s názvem Component Repository supporting Compatibility Evaluation (CRCE). Úložiště má být rozšířeno pluginem, který poskytne CRCE API pro interakci s klienty úložiště. Teoretická část popisuje komponentové programování, komponentová úložiště s důrazem na CRCE a probírá možnosti technologií vhodných k realizaci API. Vybraným způsobem se stalo REST API. Praktická část práce popisuje nově vytvořený modul poskytující úložišti REST API a modul pro automatické verzování komponent na základě informací o kompatibilitě komponent, který jsem v rámci práce zprovozňoval.
Anotace v angličtině
The aim of my work is to extend the Component Repository supporting Compatibility Evaluation (CRCE). CRCE repository should be extended by plugin that provide CRCE API for interaction with its clients. The theoretical part contains information about Component-based software engineering, an overview of Java component repositories, a chapter about CRCE and the analysis of possibilities for the realisation of client-server communication between the repository and its clients. REST API was chosen for the solution. The practical part contains a description of the CRCE REST module that was created as part of this thesis and module for versioning components based on component compatibility informations.
Klíčová slova
úložiště, komponenta, OSGi, verzování, metadata, kompatibilita, rozšíření, Maven, REST, API
Cílem této práce je vytvořit rozšíření pro úložiště komponent s názvem Component Repository supporting Compatibility Evaluation (CRCE). Úložiště má být rozšířeno pluginem, který poskytne CRCE API pro interakci s klienty úložiště. Teoretická část popisuje komponentové programování, komponentová úložiště s důrazem na CRCE a probírá možnosti technologií vhodných k realizaci API. Vybraným způsobem se stalo REST API. Praktická část práce popisuje nově vytvořený modul poskytující úložišti REST API a modul pro automatické verzování komponent na základě informací o kompatibilitě komponent, který jsem v rámci práce zprovozňoval.
Anotace v angličtině
The aim of my work is to extend the Component Repository supporting Compatibility Evaluation (CRCE). CRCE repository should be extended by plugin that provide CRCE API for interaction with its clients. The theoretical part contains information about Component-based software engineering, an overview of Java component repositories, a chapter about CRCE and the analysis of possibilities for the realisation of client-server communication between the repository and its clients. REST API was chosen for the solution. The practical part contains a description of the CRCE REST module that was created as part of this thesis and module for versioning components based on component compatibility informations.
Klíčová slova
úložiště, komponenta, OSGi, verzování, metadata, kompatibilita, rozšíření, Maven, REST, API
Seznamte se s technologiemi pro ukládání a zpřístupnění softwarových komponent a jejich metadat.
Prostudujte návrh a implementaci experimentálního úložiště komponent CRCE, zejména s ohledem na správu informací přidružených ke komponentám a tvorbu rozšiřujících modulů.
Navrhněte a implementujte rozšíření CRCE pro vytváření výsledků základních kontrol kompatibility komponent, jejich ukládání a podporu vzdáleného přístupu k nim.
Webové rozhraní úložiště doplňte o možnosti řízení těchto procesů a přístup k uloženým informacím.
Funkčnost výše uvedených rozšíření demonstrujte na příkladové aplikaci.
Zásady pro vypracování
Seznamte se s technologiemi pro ukládání a zpřístupnění softwarových komponent a jejich metadat.
Prostudujte návrh a implementaci experimentálního úložiště komponent CRCE, zejména s ohledem na správu informací přidružených ke komponentám a tvorbu rozšiřujících modulů.
Navrhněte a implementujte rozšíření CRCE pro vytváření výsledků základních kontrol kompatibility komponent, jejich ukládání a podporu vzdáleného přístupu k nim.
Webové rozhraní úložiště doplňte o možnosti řízení těchto procesů a přístup k uloženým informacím.
Funkčnost výše uvedených rozšíření demonstrujte na příkladové aplikaci.