Giter Club home page Giter Club logo

pa-core's Introduction

master build test build

PlanetArchive Core Services

Build requirements

Build procedure

To build the project locally, execute the following command from the repository root folder:

mvn clean package

By default, it builds Spring Boot application (spring_boot_jar profile).

After the build, get the runnable JAR: jooq-spring-boot/target/jooq_spring_boot.jar

pa-core's People

Contributors

dependabot[bot] avatar ozimakov avatar

Watchers

 avatar  avatar  avatar

pa-core's Issues

cache disable

Disable cache for all methods:
countAllByType
findAllByType
getUser

Implement an endpoint for importing event-related documents

Implement an endpoint that would allow receiving a large number of requests.
Considering each request to bring JSON payload and, optionally, attached files as multipart attachments or withing a JSON body (base64 field).
Configuration should provide a way of mapping requests to document/folder types and location, as well as field mapping and content processing strategy.

Unable to add a new version using REST API

Currently, there're no ways to add a new version of the document using the REST API.
Expected behavior:
When we're adding a document using POST /api/docs we should have an option to provide the parent document in versionParent field. If it's set a new document should become the latest version of the version series. It should get a new version number by incrementing the major part of the latest one in the series (1.0->2.0, 2.0->3.0, 2.2->3.0, etc).

implement the getObjectByPath(...) method declared in cmis service

default implementation of getObjectByPath method provided by AbstractCmisService class needs to be overridden.
There are two required parameters:
repositoryId - the identifier for the repository
path - the path to the object

path - "/" separated list of folders

List of optional parameters:
filter - a comma-separated list of query names that defines which properties must be returned by the repository
includeAllowableActions - if true, then the repository must return the allowable actions for the object (default is false)
includeRelationships - indicates what relationships in which the object participates must be returned (default is IncludeRelationships.NONE). Possible values: NONE SOURCE, TARGET, BOTH
renditionFilter - indicates what set of renditions the repository must return whose kind matches this filter (default is cmis:none)
includePolicyIds - if true , then the repository must return the policy ids for the object (default is false )
includeAcl - if true , then the repository must return the ACL for the object (default is false)
extension - extension data

Please find cmis spec here

Use cases:

given:
repositoryId
path
when
path is blank
then
Root object returned

given:
repositoryId
path
when
path has incorrect format
then
CmisInvalidArgumentException must be thrown

given:
repositoryId
path
when
repositoryId is not blank
path is not blank and has correct format
then
object found in database by last part of path must be returned or null if object not found

given:
repositoryId
path
when
repositoryId is not blank
path is not blank and has correct format
both folder and document with the same name found
then
document must be returned.

TODO: Add uses cases for optional parameters
CmisInvalidArgumentException must be thrown

integration test reorganization

  1. Add Spring test profile for integration tests
  2. Collect all integration tests from different modules inside jooq-spring-boot module.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.