Winery’s Module Structure¶
OUTDATED
This section provides a short overview on all projects Winery consists of.
org.eclipse.winery.common
This project contains classes used by the repository and topology modeler projects. It contains constants, the id system, interface definitions for repository access and the datatype to manage Winery’s extended key/value properties.
org.eclipse.winery.highlevelrestapi
This project contains an API to communicate with REST services. It provides an abstraction layer above Apache Commons HTTPClient. It is used by projects generated by the IA generator to upload compiled implementations as implementation artifacts.
org.eclipse.winery.generators.ia
This project contains the generator which generates a NodeType implementation based on a NodeType interface.
org.eclipse.winery.model.csar.toscametafile
This project contains the model for the file “Tosca.meta”.
org.eclipse.winery.model.selfservice
This project contains the model for the self service portal.
It is used by the Vinothek [BBKL14] to display user defined data.
org.eclipse.winery.model.tosca
This project contains a JAX B generated model of the XSD of OASIS TOSCA v1.0. The XSD hat to be modified to enable proper referencing and use. An Implementation Artifactmay carry a “name” attribute. The contents of properties of Boundary Definitions are processed in “lax” mode.
org.eclipse.winery.repository
This is the heart of Winery. This project hosts the repository, where all entities of TOSCA are stored and managed. It realizes the components “Type, Template, and Artifact Management” and “Repository” (Figure 1).
org.eclipse.winery.repository.client
This project hosts a client using the REST API of the repository and offering a Java object based client to the Winery repository.
org.eclipse.winery.repository.configuration
This project contains configurations used in the repository. Example are GitHub OAuth credentials. They must be configured in order to use them locally!
org.eclipse.winery.repository.rest
This project contains the REST resources.
Project org.eclipse.winery.repository.ui
This project contains the Angular ui for the repository. Here, the whole repository can be managed and
configured. The repository-ui documentation is generated during npm run build
process and can be found in
org.eclipse.winery.repository.ui/dist/doc/
folder.
org.eclipse.winery.topologymodeler
This part of Winery enables modeling topologies graphically. It realizes the component “Topology Modeler” (Figure 1).