interface PubCatInterface {
RequestResponse:
getAuthorPubs( {authorId:string} )( Publications ),
getConfPubs( {confId:string} )( Publications )
}- Implementation original/pubcat.ol
location: "local" protocol: sodep
- TCP/HTTP Endpoint original/http.ol
location: "socket://localhost:8080" protocol: http { URI: "/author/{authorId}" -> getAuthorPubs( {authorId} ) URI: "/conf/{confId}" -> getConfPubs( {confId} ) }
interface PubCatWithAPIKeyInterface {
RequestResponse:
getAuthorPubs( {authorId: string, key: string} )( Publications ) throws NotAuthorised,
getConfPubs( {confId: string, key: string} )( Publications ) throws NotAuthorised
}- Ad-hoc/Internal
- Implementation ad-hoc/internal/pubcat.ol
location: "local" protocol: sodep
- TCP/HTTP Endpoint ad-hoc/internal/http.ol
location: "socket://localhost:8080" protocol: http { Header: "Authorization: {key}" URI: "/author/{authorId}" -> getAuthorPubs( {authorId, key} ) URI: "/conf/{confId}" -> getConfPubs( {confId, key} ) }
- Implementation ad-hoc/internal/pubcat.ol
- Ad-hoc/Adjacent ad-hoc/adjacent/pubcat.ol
TCP/HTTP Endpoint for original/pubcat.ol
location: "socket://localhost:8081" protocol: http { Header: "Authorization: {key}" URI: "/author/{authorId}" -> getAuthorPubs( {authorId, key} ) URI: "/conf/{confId}" -> getConfPubs( {confId, key} ) }
- Ad-hoc/External ad-hoc/external/pubcat.ol
TCP/HTTP Endpoint for original/http.ol
location: "socket://localhost:8081" protocol: http { Header: "Authorization: {key}" URI: "/author/{authorId}" -> getAuthorPubs( {authorId, key} ) URI: "/conf/{confId}" -> getConfPubs( {confId, key} ) }
- Parametric/Adjacent parametric/adjacent/pubcat.ol
TCP/HTTP Endpoint for original/pubcat.ol
location: "socket://localhost:8081" protocol: http { Header: "Authorization: {key}" URI: "/author/{authorId}" -> getAuthorPubs( {authorId, key} ) URI: "/conf/{confId}" -> getConfPubs( {confId, key} ) }
- Parametric/External parametric/external/pubcat.ol
TCP/HTTP Endpoint for original/http.ol
location: "socket://localhost:8081" protocol: http { Header: "Authorization: {key}" URI: "/author/{authorId}" -> getAuthorPubs( {authorId, key} ) URI: "/conf/{confId}" -> getConfPubs( {confId, key} ) }
- Merge Endpoints merge-endpoints/pub-index.ol
HTTP Endpoint merge-endpoints/http.ol
location: "local" protocol: http { URI: "/author/{authorId}" -> getAuthorPubs( {authorId} ) URI: "/conf/{confId}" -> getConfPubs( {confId} ) URI: "/citations/{pubId}" -> getCitingPubs( {pubId} ) }
- Version Identifier version-identifier/pubcat-gateway.ol
Testing each service requires jolie.
jolie external/adjacent/test.ol