task_185 Develop (#172)
* Updated README (#112)
* Feature/add missing publication endpoints (#108)
* Added Search and Paging using new ListParameters to Publications
* Adjusted Publication-Tests and RootController to use new ListParameters
* Added Endpoints in Publication controller to get all linked Algorithms and Implementations
* Fixed joinColumn of Publications in Algorithm model
* Added linking/unlinking of Algorithms in Publication/Controller
* Removed old getAlgorithm methods in PublicationService, adjusted test
* Adjusted testAddAlgorithm_WithPublications test, removed cyclic cascading that leads to error in test because relation is saved twice from both sides
* Adjusted PublicationControllerTest, removed unused service from PublicationController
* Added missing ParametersListDoc annotation
* GenericLinkAssembler toModel of Entity now adds links automatically
* Removed unused import
* Changed the way the linking of algorithm works with publications, now PublicationMixIn is used and publcations are added to the algorithms, no two way jointable
* Removed now unused interface
* Added Endpoints for linking/unlinking implementations with publications
* Removed linking of implementations with publications, now publications are linkes with implementations instead (the other way around)
* Readded GET-Endpoints for linked implementations in publication controller
* Added Link to publications in ImplementationAssembler
* Renamed publication path variable
* DeleteMapping fix
* Readded links for implementations in PublicationLinkAssembler
* Fixed joinTable for Implementation-Publication
* Renamed PublicationController methods
* Fixed path variable from merge error
* Feature/add search option to applicatin area endpoint (#115)
* adjust applicationArea controller and service
add option to search for name in application areas
* Update ApplicationAreaRepository.java
* add ListParametersDoc annotation
* Feature/upload sketches (#114)
* Fix DiscussionTopic relationship with KnowledgeArtifact (#116)
* Turn KnowledgeArtifact into an Entity + add a relationship with DiscussionTopic
* Make the topic's target artifact required
* Refactor and extend execution environment functionalities (#109)
* Renamed all Backend related classes and functions to ComputeResource
* Renamed ComputingResourceProperty to ComputeResourceProperty
* Reinserted CloudServices and ComputeResources
* Reworked controllers of software platform, cloud service and compute resource
* Reworked services of software platform, cloud service and compute resource
Co-authored-by: Christian Müller <dev@c-mueller.xyz>
* Swapped remaining Entities with DTOs in DTO-Objects (#118)
* Swapped remaining Entities with DTOs in DTO-Objects
* Removed title from configured AlgorithmDto Schema to have consistent schema naming for EntityModelDTOs and DTOs
* Added ImplementationSchema for ImplementationDTO
* Removed unused imports
* Merged the two OverrideModelConverters into one
* Reintroduce tags (#120)
reintroduces tags
* Migrate to test containers (#123)
* Refactor Backend (#117)
-> Improve Readability of controller classes
-> Rename QuantumResourcePropertyTypeAssembler to ComputeResourcePropertyTypeAssembler
-> Make dependencies in controllers final
-> Remove meaningless log outputs in controllers
* Begin changing Test URLs to 'fromMethodCall'
* Fix Travis
* Reformated controllers
* Refactored crud algorithm service and controller methods
* Started semantic refactoring for algorithm controller and service
* Migrate AlgorithmController to fromMethodCall
* Misc Refactoring on publications
* Refactor more of algorithm controller functions
* Fix some tests and refactor some compute resource property functions in algorithm controller
* Finish refactoring algorithm controller functions
* Fix algorithm controller test
* Refactor PublicationController
* Fix compile errors and refactor CRUD implementation controller functions
* Refactor application area controller and service
* Refactored problem type controller and service
* Fix test
* Creat link service and more refacoting
* Move linking functionality to linking service
* Add validation annotations in DTOs
* Fix merge issues
* Move missing linking functions to linking service and adjusted controllers
* Fixed tests
* Removes unused method
* Added missing mockbeans in controller tests
* Update model mapper
* Fix failing tests
* Add UUID Mappings to Implementation and PatternRelations
* Changed http status codes of controller methods
* Add validators to request bodies in controllers
* Add "RequiresID" to ensure a child object in a Dto has an Id
* Ensure controllers fulfill our requirements
* Refactored pattern relation controller and service
* Refactored pattern relation type controller and service
* Refactored tag functionality
* Refactor ComputeResourceProperty
* Removed circular dependency from algorithm service
* Fix Service tests
* Moved compute resource property type service function to seperate service class
* Fix compile errors
* Refactor compure resource property methods in controllers
* Create algorithm relation controller
* Remove ComputeResourecePropertyInteface
* Implement algorithm relation service and controller
* Misc improvements
* Adjust create methods of models with types
* Refactor type services
* Renaming
* Renaming
* Fix compile errors
* Renmae algorOrImpl
* Rename algoRelationType to algorithmRelationType
* Fix missing transactions and method names in services
* Update License Header
* Refactor repository classes
* Fix and refactor service tests
* Fix failing tests
* Add test for application area service
* Add nonnull annotations to services
* Fix nameing
* Fix Controller test
* Fix some controller tests
* Fix compute resource property type controller test
* Fix Tests
* Fix service test
* Fix pattern relation service test
* Fix Annotation
* Fix compure resource service test
* Add generic find all method
- Organize imports
* Remove swagger content annotation from controllers
* Fix naming inconsistency in service tests
* Fix compile error
* Remove wxceptions
* Add EntityReferenceConstraintViolationException and remove mixin
* Adress and remove some TODOs
* Organize imports
* Expand exception messages and fix tests
* Some work on algorithmRelations
* Adjust algorithm relation functionality
* Model cleanup
* Improve robustness of model methods
* Implement missing algorithm and tag service tests
* Implement AlgorithmRelationService tests
* Add missing service tests for ComputeResourcePropertyTypeService
* Clean up service tests
* Add more ComputeResourcePropertyService tests
* Add ImplementationService tests
* Add more service tests
* Add some find linked objects tests
* Added linking service and some of its tests
* Add missing linking service tests
* Remove pattern relation linking functionality
* Organize imports and reformat code
* Remove misleading "Atlas is ready to use" message
* Fix some code cleanup things
* Exceptions now return JSON instead of plain text
* Remove hidden annotation from ComputeResourcePropertyController
* Change API path of implementation controller
* Add example swagger dokumentation to algorithm controller
* Change POSTs on resource ids
* Change update PUTs to point to the changing resource
* Add compute resource property calls to algorithm, implementation and compute resource controllers
* Add linking methods of software platform and implementation in software platform controller
* Add linking methods to publication controller for algorithm
* Fix software platform controller test
* Change algorithm relations api path
* Add new get mappings for algorithm related objects
* Add pattern relation methods to algorithm api path
* Change tag add methods from PUT to POST
* Add missing mock beans to controller tests
* Add validation checking if algorithm and implementation are related in all implementation related methods
* Add validations to algorithm relation functions
* Add missing override annotation
* Expand validation of compute resource property methods in controllers
* Add validation to some GET request paths
* Add validation to pattern relation controller methods
* Replace Update in ids with IDOnly
* Change validation group of linking calls
* Delete compute resource property controller
* Change annotations in compute resource property model class
* Fix wrong method nameing in compute resource controller
* Fix wrong method nameing in implementation controller
* Fix naming of problem type get method
* Fix validations
* Fix misc issues
* Misc fixes again
* Add missing request body annotations
* Fix wrong return types in controllers
Co-authored-by: Tobias Haller <tobias_haller@outlook.de>
* Feature/add search option to problem types endpoint (#122)
* add search option to problem types controller
* fix name and remove findByName method
* Upload sketches (#125)
* Add upload for sketches
* Add delete for sketches
* upload-sketch: mock SketchService in AlgorithmControllerTest.java to correct the Tests
* upload-sketch: set UTF-8 encoding in docker-build process
* upload-sketch: convert sketch.description into text
* upload-sketch: KnowledgeArtifact - add creationDate and lastModifiedAt attributes
* upload-sketch: remove redundant attributes
* upload-sketch: add creationDate and lastModifiedAt in AlgorithmDTO
* upload-sketch: set maximum upload size
* upload-sketch: set maximum upload size in application.properties.tpl
* upload-sketch: remove unused .max-request-size and delete properties from application.properties
* PlanQK-85: extend upload Sketches with Image entity
* upload-sketch: extend Image.java and upload/download functionality
* upload sketches(PlanQk-85): implement: getSketchImage, getSketch and getSketches
* upload sketches(PlanQk-85): add controller tests for upload sketches use case
* upload sketches(PlanQk-85): add service tests for upload sketches use case
* PlanQK-152: update sketch description
* PlanQK-153: fix after code review
* PlanQK-153: replace where with WHERE
* Merge develop branch and resolve merge conflicts
* upload-sketch: fix after code review
* upload-sketch: change creationDate, lastModifiedAt form public to private
* upload-sketch: throw and catch IllegalArgumentException if the content of multipart file can't not be read
* upload-sketch: delete unused @Param
Co-authored-by: Christoph Krieger <christoph.krieger@stoneone.de>
Co-authored-by: Tobias Haller <tobias_haller@outlook.de>
* Extend Implementation entity and DTO (#127)
* extend Implementation entity and DTO
* Define column problemStatement of Implementation as text
* Add new added fields of Implementation Entity to update method of ImplementationServiceImpl
Co-authored-by: Christoph Krieger <christoph.krieger@stoneone.de>
* Versioning improvements (#126)
* Add @ApiVersion annotation and custom request path mapping
* Use LinkBuilderService to construct test URLs
This also adds support for formatting ListParameters into URL components.
* delete unnecessary setSketches() from update algorithm. The relation between the algorithms and sketches is made by the sketch entity (#129)
* remove references to a problemType as parentProblemType when it gets … (#128)
* remove references to a problemType as parentProblemType when it gets deleted
* implement proposed change
* Fix Travis badge in the README (#131)
* Update Service Test docs (#130)
* prevent backend from ereasing db on startup (#133)
* Add Codecov Badge (#135)
* Feature/image mime type (#136)
* Add MIME Type to Image Entity
* Change type of imageURL to java.net.URL
* fix image upload test and revert the application properties
Co-authored-by: radufalcusanStoneone <radu.falcusan@stoneone.de>
* Add missing service tests (#137)
* Add missing algorithm relation service tests
* Add missing algorithm service tests and fixes
* Add missing compute resource property service tests
* Add missing service tests for implementation service
* Add missing service tests to pattern relation service
* Add missing service tests for publication service and extracted containsElementWithId method into ServiceUtils
* Add missing tests for software platform service
* Add multiple missing service tests and expand some existing service tests
* Remove duplicate findAll method from problem type service
* Add update test to sketch service
* Add nonnull anootation
* Fix failing update test
* Fix malformed url exceptions
* Comment out failing controller test
* fix db init (#140)
* add getImplementation() in ImplementationGlobalController.java (#141)
* add getImplementation() in ImplementationGlobalController.java
* delete unused mocks after code review
* Rework Controller tests (#139)
* Add Tag Controller test
* Add SortwarePlatformTest
* Add AAControllerTest
* Begin ImplementationControllerTest
* More work on the implementation controller test
* Finish implementation controllers
* Implement PublicationControllerTest (Pt. 1)
* Finish PublicationControllerTest
* Misc
* Add algorithm relation controller test
* Add methods to algorithm relation controller test
* Implement ProblemTypeControllerTest
* Finish Problem type controller
* Implement AlgorithmRelationControllerTest
* Update names in TagControllerTest
* Finish ComputeResourcePropertyTypeControllerTest
* Finish CloudServiceControllerTest
* Start fixing AlgorithmController tests
* Fixed AlgorithmController tests up to pattern relation functions
* Implement AlgorithmController tests up to problem type methods
* Update ComputeResourceControllerTest
* Fix Travis log length
* Futher reduce Log output
* Implement AlgorithmController tests for application area and reduce log output
* Fix Compile Errors
* Fix stuff
* Remove unused tests
* Fix
* Finish AlgorithmControllerTest
* Refactor link check in discussion topic
* Update log cleanup
* Add Service test for link method
* Fix AlgorithmRelationTypeControllerTest
* Rename method
* Resolve merge conflicts
Co-authored-by: Christian Müller <dev@c-mueller.xyz>
* Add Architectural Decision Records (#119)
* Create 0003-model-mapper.md
* Update index.md
* Create 0004-postgres-for-service-tests.md
* Update index.md
* Update 0004-postgres-for-service-tests.md
* Update index.md
* adds OpenAPI adr
* Document model/link assemblers
* Remove license
Apparently it's not present in all the others.
* Add JUnit adr and extend postgres adr
* Fix junit adr title
* Add pros and cons
* Update 0004-postgres-for-service-tests.md
* Update 0005-use-OpenAPI.md
* Create 0008-testcontainers.md
* Fix index.md
Co-authored-by: Felix Burk <felix.burk@googlemail.com>
Co-authored-by: Tim Niederhausen <st144339@stud.uni-stuttgart.de>
Co-authored-by: Tobias Haller <tobias_haller@outlook.de>
Co-authored-by: Christian Müller <dev@c-mueller.xyz>
* feat(PLANQK-179): add technology attribute (#143)
* Extend JavaDoc and OpenAPI documentation (#142)
* Extend openAPI documentation of algorithmController
* Add docu for 404 in algorithmController
* Add more open api documentation to controllers
* Add openapi docu to compute resource controllers
* Add openapi docu for implementationController
* Add more controller docu
* Add missing openapi docu to controllers
* Add openapi docu for response code 400 responses
* Add docu to dto classes
* Add docu for repository classes and organize imports
* Add class docu to service interfaces
* Fix typo
* Add javadoc for algorithm relation and type service interfaces
* Document algorithmService class
* Add javadoc for applicationArea and problemType services
* Add javadoc for CloudService service
* Add javadoc for compure resource property services
* Add javadoc for compute resource and software platform service interface
* Add javadoc for discussion service interfaces
* Fix wrong pagable info in javadoc
* Add javadoc to implementation and publication service interfaces
* Add javadoc for sketch and tag service
* Add javadoc for pattern relation and type service
* Add javadoc for linking service
* add softwarePlatforms to ImplementationDto.java (#144)
* Add missing pagination to getImplementationsOfAlgorithm (#145)
* Publish API docs to GitHub Pages using GitHub Actions (#147)
* Fix ConcurrentModificationException when deleting entities (#149)
Copy `referenced objects` collections before iterating over them.
Custom removal methods such as `removeAlgorithm()` try to remove an element
from both sides of its relationship.
This randomly fails as we're iterating over one of the two containers involved.
Example stack trace:
```
java.util.ConcurrentModificationException: null
at java.base/java.util.HashMap$HashIterator.nextNode(HashMap.java:1493)
at java.base/java.util.HashMap$KeyIterator.next(HashMap.java:1516)
at org.hibernate.collection.internal.AbstractPersistentCollection$IteratorProxy.next(AbstractPersistentCollection.java:883)
at java.base/java.lang.Iterable.forEach(Iterable.java:74)
at org.planqk.atlas.core.services.AlgorithmServiceImpl.removeReferences(AlgorithmServiceImpl.java:152)
```
* Database migrations (#146)
* Add Liquibase
* Add initial changelog
* Include all DB migration changelogs manually (#150)
It appears the 'executable jar/war' built via the Spring Boot maven plugin
doesn't support directory listings for classpath URIs, breaking the automatic
OpenAPI spec extraction.
* Feature/adapt checkstyle and copyright (#152)
* update copyright and checkstyle file
* update copyright in all files
* Apply Codestyle
* consider part of checkstyle warnings
* Apply Codestyle
* apply codestyle for constructors
* improve depth of nested if statement
* Remove try catch
* change LinkBuilderService from protected to private in GenericLinkAssembler
* add accessors for private LinkBuilderService
* Fix checkstyle errors
* adapt readme for code style
* fix list of contributors
Co-authored-by: Christoph Krieger <christoph.krieger@stoneone.de>
* Feature/implementation code artifacts
Co-authored-by: radufalcusanStoneone <radu.falcusan@stoneone.de>
* Temporarily deactivate liquibase (#153)
* add checkstyle in poms for build (#155)
* add checkstyle in poms for build
* remove redundancy in sub poms and delete checkstyle.xml in sub directory
* Feature/add discussions (#154)
* refactor dependency between knowledge artifacts and discussion topics
* fix put operations for discussion topics and comments
* add controller tests
* add service tests and documentation
* remove unused import
* Jitpack (#156)
* Create jar for using the web module as a dependency
* Create jar and war
* build web/jar with profiles
* Create jar and war
* Create jar and war
* Create jar and war
* add jitpack.yml and run with batch profile
* set profile to jar
* set profile to jar
* set packaging with env.variables
* delete profile
* delete install stage
* delete env.
* add custom environment variable
* add custom environment variable
* add custom environment variable
* Update jitpack.yml
* Update jitpack.yml
* Update jitpack.yml
* Update jitpack.yml
* test
* ./mvnw install -DskipTests -P jar
* change to mvn package
* change default properties
* change default properties
* change default properties
* delete jitpack.yml
* add jitpack and change default profile
* comment the custom install command
* maven install with jar profile
* change packaging type name
* delete commented lines
Co-authored-by: Christoph Krieger <christoph.krieger@stoneone.de>
* Fix docker setup (#157)
* Only activate CloudStorageConfiguration in google-cloud profile (#158)
* execute classifier with jar profile (#160)
* Jitpack (#164)
* modify classifier
* test
* classifier in profile
* test
* test
* add plugins into profiles
Co-authored-by: Christoph Krieger <krieger.christoph1@gmail.com>
Co-authored-by: Stefan Basaric <43963121+LHommeDeBat@users.noreply.github.com>
Co-authored-by: TGrosskopf <st160109@stud.uni-stuttgart.de>
Co-authored-by: Tim Niederhausen <timniederhausen@users.noreply.github.com>
Co-authored-by: T-Haller <32315230+T-Haller@users.noreply.github.com>
Co-authored-by: Christian Müller <dev@c-mueller.xyz>
Co-authored-by: Felix B <felix.burk@googlemail.com>
Co-authored-by: Tobias Haller <tobias_haller@outlook.de>
Co-authored-by: Christoph Krieger <christoph.krieger@stoneone.de>
Co-authored-by: Valentin Seifermann <ValeSayfa@t-online.de>
Co-authored-by: Tim Niederhausen <st144339@stud.uni-stuttgart.de>
Co-authored-by: Marie Salm <github@mielie.de>
Co-authored-by: Benjamin Weder <benjamin.weder@iaas.uni-stuttgart.de>
#2305 passed
- Ran for
- New branch build
Sorry, we're having troubles fetching jobs. Please try again later.