REST/HTTP platform specific model (PSM) for the Systems Modeling API and Services
Generated by OpenAPI Generator 7.9.0.
- Kotlin ^1.9.24
- Gradle ^8.3.0
First, create the gradle wrapper script:
gradle wrapper
Then, run:
./gradlew check assemble
This runs all tests and packages the library.
The server builds as a jar with a main entrypoint. To start the service, run java -jar ./build/libs/flexo-sysmlv2.jar
.
You may also run in docker:
docker build -t org.openmbee.flexo.sysmlv2 .
docker run -p 8080:8080 org.openmbee.flexo.sysmlv2
- Supports JSON inputs/outputs, File inputs, and Form inputs (see ktor documentation for more info).
Supports collection formats for query parameters: csv, tsv, ssv, pipes.- Some Kotlin and Java types are fully qualified to avoid conflicts with types defined in OpenAPI definitions.
All URIs are relative to http://localhost
Class | Method | HTTP request | Description |
---|---|---|---|
BranchApi | deleteBranchByProjectAndId | DELETE /projects/{projectId}/branches/{branchId} | Delete branch by project and ID |
BranchApi | getBranchesByProject | GET /projects/{projectId}/branches | Get branches by project |
BranchApi | getBranchesByProjectAndId | GET /projects/{projectId}/branches/{branchId} | Get branch by project and ID |
BranchApi | postBranchByProject | POST /projects/{projectId}/branches | Create branch by project |
CommitApi | getChangeByProjectCommitId | GET /projects/{projectId}/commits/{commitId}/changes/{changeId} | Get change by project, commit and ID |
CommitApi | getChangesByProjectCommit | GET /projects/{projectId}/commits/{commitId}/changes | Get changes by project and commit |
CommitApi | getCommitByProjectAndId | GET /projects/{projectId}/commits/{commitId} | Get commit by project and ID |
CommitApi | getCommitsByProject | GET /projects/{projectId}/commits | Get commits by project |
CommitApi | postCommitByProject | POST /projects/{projectId}/commits | Create commit by project |
DiffMergeApi | diff | GET /projects/{projectId}/commits/{compareCommitId}/diff | Diff a base commit and compare commit |
DiffMergeApi | merge | POST /projects/{projectId}/branches/{targetBranchId}/merge | Merge source commit(s) into a target branch |
ElementApi | getElementByProjectCommitId | GET /projects/{projectId}/commits/{commitId}/elements/{elementId} | Get element by project, commit and ID |
ElementApi | getElementsByProjectCommit | GET /projects/{projectId}/commits/{commitId}/elements | Get elements by project and commit |
ElementApi | getProjectUsageByProjectCommitElement | GET /projects/{projectId}/commits/{commitId}/elements/{elementId}/projectUsage | Get ProjectUsage that originates the provided element |
ElementApi | getRootsByProjectCommit | GET /projects/{projectId}/commits/{commitId}/roots | Get root elements by project and commit |
MetaApi | getDatatypeById | GET /meta/datatypes/{datatypeId} | Get datatype by ID |
MetaApi | getDatatypes | GET /meta/datatypes | Get datatypes |
ProjectApi | deleteProjectById | DELETE /projects/{projectId} | Delete project by ID |
ProjectApi | getProjectById | GET /projects/{projectId} | Get project by ID |
ProjectApi | getProjects | GET /projects | Get projects |
ProjectApi | postProject | POST /projects | Create project |
ProjectApi | putProjectById | PUT /projects/{projectId} | Update project by ID |
QueryApi | deleteQueryByProjectAndId | DELETE /projects/{projectId}/queries/{queryId} | Delete query by project and ID |
QueryApi | getQueriesByProject | GET /projects/{projectId}/queries | Get queries by project |
QueryApi | getQueryByProjectAndId | GET /projects/{projectId}/queries/{queryId} | Get query by project and ID |
QueryApi | getQueryResultsByProjectIdQuery | GET /projects/{projectId}/query-results | Get query results by project and query definition |
QueryApi | getQueryResultsByProjectIdQueryId | GET /projects/{projectId}/queries/{queryId}/results | Get query results by project and query |
QueryApi | getQueryResultsByProjectIdQueryPost | POST /projects/{projectId}/query-results | Get query results by project and query definition via POST |
QueryApi | postQueryByProject | POST /projects/{projectId}/queries | Create query by project |
QueryApi | putQueryByProjectAndId | PUT /projects/{projectId}/queries/{queryId} | Update project by project and ID |
RelationshipApi | getRelationshipsByProjectCommitRelatedElement | GET /projects/{projectId}/commits/{commitId}/elements/{relatedElementId}/relationships | Get relationships by project, commit, and related element |
TagApi | deleteTagByProjectAndId | DELETE /projects/{projectId}/tags/{tagId} | Delete tag by project and ID |
TagApi | getTagByProjectAndId | GET /projects/{projectId}/tags/{tagId} | Get tag by project and ID |
TagApi | getTagsByProject | GET /projects/{projectId}/tags | Get tags by project |
TagApi | postTagByProject | POST /projects/{projectId}/tags | Create tag by project |
The stub server was generated from the SysML v2 API Services' openapi.json.
Since the OpenAPI generator attempts to dereference the $id
key of elements under components.schema
, this document must be preprocessed to replace these ids with the basename of the URL path. Node.js must be installed to run the preprocess script.
Please note that additional postprocessing was required to get the stub server dependencies updated and fix some escaping issues on the generated server code.