mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-09-24 14:32:01 +00:00
Compare commits
65 Commits
tas-restap
...
tas-restap
Author | SHA1 | Date | |
---|---|---|---|
|
bcd304abab | ||
|
170e82ad75 | ||
|
8c6cebec1d | ||
|
d822a4d7ac | ||
|
a9d9daf6bb | ||
|
9bfbc3a623 | ||
|
7bd1efb1f0 | ||
|
6b1b240da7 | ||
|
e9ce710f3c | ||
|
26d29b0bc0 | ||
|
df8e315d48 | ||
|
458a8c17ff | ||
|
0cecb28903 | ||
|
19584814f0 | ||
|
4ac6cf4088 | ||
|
04225ce5ef | ||
|
c7464e7501 | ||
|
793ff892b7 | ||
|
7c6d35d38c | ||
|
b2dc3fa5cd | ||
|
54c91e8770 | ||
|
da2db2c339 | ||
|
84b62f2386 | ||
|
bcc3c30985 | ||
|
c457fafc1b | ||
|
fcf7d017b0 | ||
|
94be653375 | ||
|
d9c37d5f9f | ||
|
2555ff04f6 | ||
|
668e14182f | ||
|
e0e27f6448 | ||
|
0c7fe86cc0 | ||
|
c631cdba82 | ||
|
aabbcf449f | ||
|
ec4958a6e2 | ||
|
751643bac1 | ||
|
08b603cc33 | ||
|
410759bb37 | ||
|
29b25ea8ce | ||
|
cd6c38347f | ||
|
5ce6a774cc | ||
|
13529c0408 | ||
|
718968e77f | ||
|
2b59c3ad71 | ||
|
4c984b3b52 | ||
|
764e47b472 | ||
|
0c24c55296 | ||
|
5d74ca8323 | ||
|
a45137fc48 | ||
|
3595ffd7cf | ||
|
586f5f546c | ||
|
f129a47be0 | ||
|
f8287e59e2 | ||
|
79c7310a34 | ||
|
5039d4d0d0 | ||
|
f68299aa37 | ||
|
e63b0a8751 | ||
|
3d2b7a733a | ||
|
4bcffcd820 | ||
|
c552a7b660 | ||
|
3f41f8e4eb | ||
|
71ed6d1155 | ||
|
c04a83e3c2 | ||
|
e946bfcf71 | ||
|
1cee8f46bd |
17
packaging/tests/tas-restapi/.github/dependabot.yml
vendored
Normal file
17
packaging/tests/tas-restapi/.github/dependabot.yml
vendored
Normal file
@@ -0,0 +1,17 @@
|
||||
version: 2
|
||||
registries:
|
||||
maven-alfresco-internal:
|
||||
type: maven-repository
|
||||
url: https://artifacts.alfresco.com/nexus/content/groups/internal
|
||||
username: ${{secrets.NEXUS_USERNAME}}
|
||||
password: ${{secrets.NEXUS_PASSWORD}}
|
||||
updates:
|
||||
- package-ecosystem: maven
|
||||
directory: "/"
|
||||
schedule:
|
||||
interval: daily
|
||||
time: "22:00"
|
||||
timezone: Europe/London
|
||||
open-pull-requests-limit: 99
|
||||
registries:
|
||||
- maven-alfresco-internal
|
@@ -1,4 +1,4 @@
|
||||
dist: trusty
|
||||
dist: focal
|
||||
sudo: required
|
||||
language: java
|
||||
jdk:
|
||||
|
@@ -20,7 +20,7 @@ Back to [TAS Master Documentation](https://git.alfresco.com/tas/alfresco-tas-uti
|
||||
* [Configuration](#configuration)
|
||||
* [How to enable Test Rail Integration?](#how-to-enable-test-rail-integration)
|
||||
* [Reference](#reference)
|
||||
* [Change Log](docs/CHANGELOG.md) :glowing_star:
|
||||
* [Change Log](docs/CHANGELOG.md) 🌟
|
||||
* [Contributors](#contributors)
|
||||
* [Releasing](#releasing)
|
||||
* [License](#license)
|
||||
|
@@ -4,7 +4,7 @@
|
||||
<groupId>org.alfresco.tas</groupId>
|
||||
<artifactId>restapi</artifactId>
|
||||
<name>alfresco-tas-restapi</name>
|
||||
<version>1.58</version>
|
||||
<version>1.79</version>
|
||||
<parent>
|
||||
<groupId>org.alfresco</groupId>
|
||||
<artifactId>alfresco-super-pom</artifactId>
|
||||
@@ -28,13 +28,13 @@
|
||||
<suiteXmlFile>src/main/resources/shared-resources/testCount.xml</suiteXmlFile>
|
||||
<maven.build.sourceVersion>11</maven.build.sourceVersion>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<tas.utility.version>3.0.21</tas.utility.version>
|
||||
<tas.utility.version>3.0.48</tas.utility.version>
|
||||
<rest-assured.version>3.3.0</rest-assured.version>
|
||||
<httpclient-osgi-version>4.5.3</httpclient-osgi-version>
|
||||
<json-path.version>3.3.0</json-path.version>
|
||||
<xml-path.version>3.3.0</xml-path.version>
|
||||
<json-schema-validator.version>3.3.0</json-schema-validator.version>
|
||||
<jackson-databind.version>2.9.8</jackson-databind.version>
|
||||
<jackson-databind.version>2.9.10.8</jackson-databind.version>
|
||||
<maven-release.version>2.5.3</maven-release.version>
|
||||
<org.glassfish.version>1.1.4</org.glassfish.version>
|
||||
<commons-lang3.version>3.12.0</commons-lang3.version>
|
||||
@@ -44,11 +44,29 @@
|
||||
<java.version>11</java.version>
|
||||
</properties>
|
||||
|
||||
<profiles>
|
||||
<profile>
|
||||
<id>rest-api-explorer-master</id>
|
||||
<activation>
|
||||
<activeByDefault>true</activeByDefault>
|
||||
</activation>
|
||||
<properties>
|
||||
<rest.api.explorer.branch>master</rest.api.explorer.branch>
|
||||
</properties>
|
||||
</profile>
|
||||
<profile>
|
||||
<id>rest-api-explorer-52N</id>
|
||||
<properties>
|
||||
<rest.api.explorer.branch>5.2.N</rest.api.explorer.branch>
|
||||
</properties>
|
||||
</profile>
|
||||
</profiles>
|
||||
|
||||
<scm>
|
||||
<connection>scm:git:https://github.com/Alfresco/alfresco-tas-restapi.git</connection>
|
||||
<developerConnection>scm:git:https://github.com/Alfresco/alfresco-tas-restapi.git</developerConnection>
|
||||
<url>https://github.com/Alfresco/alfresco-tas-restapi</url>
|
||||
<tag>v1.58</tag>
|
||||
<tag>v1.79</tag>
|
||||
</scm>
|
||||
|
||||
<issueManagement>
|
||||
@@ -120,11 +138,11 @@
|
||||
</executions>
|
||||
<configuration>
|
||||
<arguments>
|
||||
<argument>https://raw.githubusercontent.com/Alfresco/rest-api-explorer/5.2.N/src/main/webapp/definitions/alfresco-auth.yaml</argument>
|
||||
<argument>https://raw.githubusercontent.com/Alfresco/rest-api-explorer/5.2.N/src/main/webapp/definitions/alfresco-core.yaml</argument>
|
||||
<argument>https://raw.githubusercontent.com/Alfresco/rest-api-explorer/5.2.N/src/main/webapp/definitions/alfresco-discovery.yaml</argument>
|
||||
<argument>https://raw.githubusercontent.com/Alfresco/rest-api-explorer/5.2.N/src/main/webapp/definitions/alfresco-search.yaml</argument>
|
||||
<argument>https://raw.githubusercontent.com/Alfresco/rest-api-explorer/5.2.N/src/main/webapp/definitions/alfresco-workflow.yaml</argument>
|
||||
<argument>https://raw.githubusercontent.com/Alfresco/rest-api-explorer/${rest.api.explorer.branch}/src/main/webapp/definitions/alfresco-auth.yaml</argument>
|
||||
<argument>https://raw.githubusercontent.com/Alfresco/rest-api-explorer/${rest.api.explorer.branch}/src/main/webapp/definitions/alfresco-core.yaml</argument>
|
||||
<argument>https://raw.githubusercontent.com/Alfresco/rest-api-explorer/${rest.api.explorer.branch}/src/main/webapp/definitions/alfresco-discovery.yaml</argument>
|
||||
<argument>https://raw.githubusercontent.com/Alfresco/rest-api-explorer/${rest.api.explorer.branch}/src/main/webapp/definitions/alfresco-search.yaml</argument>
|
||||
<argument>https://raw.githubusercontent.com/Alfresco/rest-api-explorer/${rest.api.explorer.branch}/src/main/webapp/definitions/alfresco-workflow.yaml</argument>
|
||||
</arguments>
|
||||
<mainClass>org.alfresco.rest.core.swagger.Generator</mainClass>
|
||||
</configuration>
|
||||
@@ -255,14 +273,14 @@
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-api</artifactId>
|
||||
<version>1.7.30</version>
|
||||
<version>1.7.32</version>
|
||||
</dependency>
|
||||
|
||||
<!-- swagger parser -->
|
||||
<dependency>
|
||||
<groupId>io.swagger</groupId>
|
||||
<artifactId>swagger-parser</artifactId>
|
||||
<version>1.0.23</version>
|
||||
<version>1.0.31</version>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<artifactId>commons-lang3</artifactId>
|
||||
@@ -274,7 +292,7 @@
|
||||
<dependency>
|
||||
<groupId>xerces</groupId>
|
||||
<artifactId>xercesImpl</artifactId>
|
||||
<version>2.12.1</version>
|
||||
<version>2.12.2</version>
|
||||
</dependency>
|
||||
|
||||
<!--fixing java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') -->
|
||||
@@ -282,7 +300,7 @@
|
||||
<dependency>
|
||||
<groupId>org.codehaus.groovy</groupId>
|
||||
<artifactId>groovy</artifactId>
|
||||
<version>2.5.9</version>
|
||||
<version>2.5.14</version>
|
||||
</dependency>
|
||||
|
||||
<!-- https://mvnrepository.com/artifact/org.codehaus.groovy/groovy-json-->
|
||||
@@ -299,7 +317,7 @@
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-project-info-reports-plugin</artifactId>
|
||||
<version>3.1.1</version>
|
||||
<version>3.1.2</version>
|
||||
<reportSets>
|
||||
<reportSet>
|
||||
<reports>
|
||||
|
@@ -1129,6 +1129,20 @@ public class RestWrapper extends DSLWrapper<RestWrapper>
|
||||
this.serverURI = restProperties.envProperty().getSolrServerUrl();
|
||||
this.serverPort = restProperties.envProperty().getSolrPort();
|
||||
configureServerEndpoint();
|
||||
configureSecretHeader();
|
||||
}
|
||||
|
||||
/**
|
||||
* Adds the secret Solr header if it has been set
|
||||
*/
|
||||
private void configureSecretHeader()
|
||||
{
|
||||
String solrSecret = restProperties.envProperty().getSolrSecret();
|
||||
if(!solrSecret.isEmpty())
|
||||
{
|
||||
String solrSecretName = restProperties.envProperty().getSolrSecretName();
|
||||
configureRequestSpec().addHeader(solrSecretName, solrSecret);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
@@ -0,0 +1,60 @@
|
||||
/*
|
||||
* Copyright 2021 Alfresco Software, Ltd. All rights reserved.
|
||||
* License rights for this program may be obtained from Alfresco Software, Ltd.
|
||||
* pursuant to a written agreement and any use of this program without such an
|
||||
* agreement is prohibited.
|
||||
*/
|
||||
package org.alfresco.rest.model;
|
||||
|
||||
import org.alfresco.rest.core.IRestModel;
|
||||
import org.alfresco.rest.core.assertion.ModelAssertion;
|
||||
import org.alfresco.utility.model.TestModel;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
|
||||
/**
|
||||
* Generated by 'dedwards' on '2021-12-16 08:32' from 'Alfresco Content Services REST API' swagger file
|
||||
* Generated from 'Alfresco Content Services REST API' swagger file
|
||||
* Base Path {@linkplain /alfresco/api/-default-/public/alfresco/versions/1}
|
||||
*/
|
||||
public class RestArchiveContentRequestModel extends TestModel implements IRestModel<RestArchiveContentRequestModel>
|
||||
{
|
||||
@Override
|
||||
public ModelAssertion<RestArchiveContentRequestModel> assertThat()
|
||||
{
|
||||
return new ModelAssertion<RestArchiveContentRequestModel>(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ModelAssertion<RestArchiveContentRequestModel> and()
|
||||
{
|
||||
return assertThat();
|
||||
}
|
||||
|
||||
@JsonProperty(value = "entry")
|
||||
RestArchiveContentRequestModel model;
|
||||
|
||||
@Override
|
||||
public RestArchiveContentRequestModel onModel()
|
||||
{
|
||||
return model;
|
||||
}
|
||||
|
||||
/**
|
||||
A map (String-String) of archive request properties for given content.
|
||||
|
||||
*/
|
||||
|
||||
private Object archiveProperties;
|
||||
|
||||
public Object getArchiveProperties()
|
||||
{
|
||||
return this.archiveProperties;
|
||||
}
|
||||
|
||||
public void setArchiveProperties(Object archiveProperties)
|
||||
{
|
||||
this.archiveProperties = archiveProperties;
|
||||
}
|
||||
}
|
||||
|
@@ -2,6 +2,8 @@ package org.alfresco.rest.model;
|
||||
|
||||
import org.alfresco.utility.model.TestModel;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
/**
|
||||
* Created by Claudia Agache on 11/11/2016.
|
||||
*/
|
||||
@@ -11,6 +13,7 @@ public class RestContentModel extends TestModel
|
||||
private String mimeTypeName;
|
||||
private String mimeType;
|
||||
private String encoding;
|
||||
private Set<String> storageClasses;
|
||||
|
||||
public int getSizeInBytes()
|
||||
{
|
||||
@@ -51,4 +54,14 @@ public class RestContentModel extends TestModel
|
||||
{
|
||||
this.encoding = encoding;
|
||||
}
|
||||
|
||||
public Set<String> getStorageClasses()
|
||||
{
|
||||
return storageClasses;
|
||||
}
|
||||
|
||||
public void setStorageClasses(Set<String> storageClasses)
|
||||
{
|
||||
this.storageClasses = storageClasses;
|
||||
}
|
||||
}
|
||||
|
@@ -0,0 +1,79 @@
|
||||
/*
|
||||
* Copyright 2021 Alfresco Software, Ltd. All rights reserved.
|
||||
* License rights for this program may be obtained from Alfresco Software, Ltd.
|
||||
* pursuant to a written agreement and any use of this program without such an
|
||||
* agreement is prohibited.
|
||||
*/
|
||||
package org.alfresco.rest.model;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
import org.alfresco.rest.core.IRestModel;
|
||||
import org.alfresco.rest.core.assertion.ModelAssertion;
|
||||
import org.alfresco.utility.model.TestModel;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
|
||||
/**
|
||||
* Generated by 'dedwards' on '2021-12-16 08:32' from 'Alfresco Content Services REST API' swagger file
|
||||
* Generated from 'Alfresco Content Services REST API' swagger file
|
||||
* Base Path {@linkplain /alfresco/api/-default-/public/alfresco/versions/1}
|
||||
*/
|
||||
public class RestContentStorageInfoModel extends TestModel implements IRestModel<RestContentStorageInfoModel>
|
||||
{
|
||||
@Override
|
||||
public ModelAssertion<RestContentStorageInfoModel> assertThat()
|
||||
{
|
||||
return new ModelAssertion<RestContentStorageInfoModel>(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ModelAssertion<RestContentStorageInfoModel> and()
|
||||
{
|
||||
return assertThat();
|
||||
}
|
||||
|
||||
@JsonProperty(value = "entry")
|
||||
RestContentStorageInfoModel model;
|
||||
|
||||
@Override
|
||||
public RestContentStorageInfoModel onModel()
|
||||
{
|
||||
return model;
|
||||
}
|
||||
|
||||
/**
|
||||
Content type property identifier (e.g. cm:content). Inside this object only colon (':') delimiter for namespace-prefix will be used.
|
||||
|
||||
*/
|
||||
|
||||
@JsonProperty(required = true)
|
||||
private String id;
|
||||
/**
|
||||
A map (String-String) of storage properties for given content.
|
||||
|
||||
*/
|
||||
|
||||
private Map<String, String> storageProperties;
|
||||
|
||||
public String getId()
|
||||
{
|
||||
return this.id;
|
||||
}
|
||||
|
||||
public void setId(String id)
|
||||
{
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public Map<String, String> getStorageProperties()
|
||||
{
|
||||
return this.storageProperties;
|
||||
}
|
||||
|
||||
public void setStorageProperties(Map<String, String> storageProperties)
|
||||
{
|
||||
this.storageProperties = storageProperties;
|
||||
}
|
||||
}
|
||||
|
@@ -0,0 +1,59 @@
|
||||
/*
|
||||
* Copyright 2021 Alfresco Software, Ltd. All rights reserved.
|
||||
* License rights for this program may be obtained from Alfresco Software, Ltd.
|
||||
* pursuant to a written agreement and any use of this program without such an
|
||||
* agreement is prohibited.
|
||||
*/
|
||||
package org.alfresco.rest.model;
|
||||
|
||||
import org.alfresco.rest.core.IRestModel;
|
||||
import org.alfresco.rest.core.assertion.ModelAssertion;
|
||||
import org.alfresco.utility.model.TestModel;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
|
||||
/**
|
||||
* Generated by 'dedwards' on '2021-12-16 08:32' from 'Alfresco Content Services REST API' swagger file
|
||||
* Generated from 'Alfresco Content Services REST API' swagger file
|
||||
* Base Path {@linkplain /alfresco/api/-default-/public/alfresco/versions/1}
|
||||
*/
|
||||
public class RestRestoreArchivedContentRequestModel extends TestModel implements IRestModel<RestRestoreArchivedContentRequestModel>
|
||||
{
|
||||
@Override
|
||||
public ModelAssertion<RestRestoreArchivedContentRequestModel> assertThat()
|
||||
{
|
||||
return new ModelAssertion<RestRestoreArchivedContentRequestModel>(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ModelAssertion<RestRestoreArchivedContentRequestModel> and()
|
||||
{
|
||||
return assertThat();
|
||||
}
|
||||
|
||||
@JsonProperty(value = "entry")
|
||||
RestRestoreArchivedContentRequestModel model;
|
||||
|
||||
@Override
|
||||
public RestRestoreArchivedContentRequestModel onModel()
|
||||
{
|
||||
return model;
|
||||
}
|
||||
|
||||
/**
|
||||
Restore from archive priority (Standard/High - to be mapped to Storage Provider specific values in Cloud Connectors)
|
||||
*/
|
||||
|
||||
private String restorePriority;
|
||||
|
||||
public String getRestorePriority()
|
||||
{
|
||||
return this.restorePriority;
|
||||
}
|
||||
|
||||
public void setRestorePriority(String restorePriority)
|
||||
{
|
||||
this.restorePriority = restorePriority;
|
||||
}
|
||||
}
|
||||
|
@@ -1,5 +1,7 @@
|
||||
package org.alfresco.rest.model;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.alfresco.rest.core.IRestModel;
|
||||
import org.alfresco.rest.core.assertion.ModelAssertion;
|
||||
import org.alfresco.utility.model.TestModel;
|
||||
@@ -7,7 +9,7 @@ import org.alfresco.utility.model.TestModel;
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
|
||||
/**
|
||||
* Generated by 'aforascu' on '2018-01-10 16:02' from 'Alfresco Content Services REST API' swagger file
|
||||
* Generated by 'tsalvado' on '2021-08-18 21:15' from 'Alfresco Content Services REST API' swagger file
|
||||
* Generated from 'Alfresco Content Services REST API' swagger file
|
||||
* Base Path {@linkplain /alfresco/api}
|
||||
*/
|
||||
@@ -47,6 +49,9 @@ public class RestStatusInfoModel extends TestModel implements IRestModel<RestSta
|
||||
@JsonProperty(required = true)
|
||||
private boolean isThumbnailGenerationEnabled;
|
||||
|
||||
@JsonProperty(required = true)
|
||||
private boolean isDirectAccessUrlEnabled;
|
||||
|
||||
public boolean getIsReadOnly()
|
||||
{
|
||||
return this.isReadOnly;
|
||||
@@ -86,5 +91,15 @@ public class RestStatusInfoModel extends TestModel implements IRestModel<RestSta
|
||||
{
|
||||
this.isThumbnailGenerationEnabled = isThumbnailGenerationEnabled;
|
||||
}
|
||||
|
||||
public boolean getIsDirectAccessUrlEnabled()
|
||||
{
|
||||
return this.isDirectAccessUrlEnabled;
|
||||
}
|
||||
|
||||
public void setIsDirectAccessUrlEnabled(boolean isDirectAccessUrlEnabled)
|
||||
{
|
||||
this.isDirectAccessUrlEnabled = isDirectAccessUrlEnabled;
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -0,0 +1,212 @@
|
||||
/*
|
||||
* Copyright 2021 Alfresco Software, Ltd. All rights reserved.
|
||||
* License rights for this program may be obtained from Alfresco Software, Ltd.
|
||||
* pursuant to a written agreement and any use of this program without such an
|
||||
* agreement is prohibited.
|
||||
*/
|
||||
package org.alfresco.rest.requests;
|
||||
|
||||
import org.alfresco.rest.core.RestRequest;
|
||||
import org.alfresco.rest.core.RestResponse;
|
||||
import org.alfresco.rest.core.RestWrapper;
|
||||
import org.alfresco.rest.model.RestArchiveContentRequestModel;
|
||||
import org.alfresco.rest.model.RestContentStorageInfoModel;
|
||||
import org.alfresco.rest.model.RestRestoreArchivedContentRequestModel;
|
||||
import org.alfresco.utility.model.TestModel;
|
||||
import org.springframework.http.HttpMethod;
|
||||
|
||||
public class ContentStorageInformation extends ModelRequest<ContentStorageInformation>
|
||||
{
|
||||
private static final String BASE_PATH = "nodes/{nodeId}/storage-info/{contentPropName}";
|
||||
private static final String VERSIONS_BASE_PATH = "nodes/{nodeId}/versions/{versionId}/storage-info/{contentPropName}";
|
||||
private static final String ARCHIVE_PATH_SUFFIX = "/archive";
|
||||
private static final String ARCHIVE_RESTORE_PATH_SUFFIX = "/archive-restore";
|
||||
|
||||
private String nodeId;
|
||||
private String contentPropName;
|
||||
private String versionId;
|
||||
|
||||
public ContentStorageInformation(RestWrapper restWrapper)
|
||||
{
|
||||
super(restWrapper);
|
||||
}
|
||||
|
||||
|
||||
public ContentStorageInformation withNodeId(String nodeId)
|
||||
{
|
||||
this.nodeId = nodeId;
|
||||
return this;
|
||||
}
|
||||
|
||||
public ContentStorageInformation withContentPropName(String contentPropName)
|
||||
{
|
||||
this.contentPropName = contentPropName;
|
||||
return this;
|
||||
}
|
||||
|
||||
public ContentStorageInformation withVersionId(String versionId)
|
||||
{
|
||||
this.versionId = versionId;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get Content Storage Properties using GET call on "nodes/{nodeId}/storage-info/{contentPropName}"
|
||||
* @return
|
||||
*/
|
||||
public RestContentStorageInfoModel getStorageInfo()
|
||||
{
|
||||
return getStorageInfo(nodeId, contentPropName);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get Content Version Storage Properties using GET call on "nodes/{nodeId}/versions/{versionId}/storage-info/{contentPropName}"
|
||||
* @return
|
||||
*/
|
||||
public RestContentStorageInfoModel getVersionStorageInfo()
|
||||
{
|
||||
return getVersionStorageInfo(nodeId, versionId, contentPropName);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get Content Storage Properties using GET call on "nodes/{nodeId}/storage-info/{contentPropName}"
|
||||
* @param nodeId The nodeId
|
||||
* @param contentPropName The content property QNAME ie. "cm:content"
|
||||
* @return
|
||||
*/
|
||||
public RestContentStorageInfoModel getStorageInfo(String nodeId, String contentPropName)
|
||||
{
|
||||
RestRequest request = RestRequest.simpleRequest(HttpMethod.GET, BASE_PATH, nodeId, contentPropName);
|
||||
return restWrapper.processModel(RestContentStorageInfoModel.class, request);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get Content Version Storage Properties using GET call on "nodes/{nodeId}/versions/{versionId}/storage-info/{contentPropName}"
|
||||
* @param nodeId The nodeId
|
||||
* @param versionId The versionId
|
||||
* @param contentPropName The content property QNAME ie. "cm:content"
|
||||
* @return object of {@link RestContentStorageInfoModel}
|
||||
*/
|
||||
public RestContentStorageInfoModel getVersionStorageInfo(String nodeId, String versionId, String contentPropName)
|
||||
{
|
||||
RestRequest request = RestRequest.simpleRequest(HttpMethod.GET, VERSIONS_BASE_PATH, nodeId, versionId, contentPropName);
|
||||
return restWrapper.processModel(RestContentStorageInfoModel.class, request);
|
||||
}
|
||||
|
||||
/**
|
||||
* Send content to archive using POST call on "nodes/{nodeId}/storage-info/{contentPropName}/archive"
|
||||
*
|
||||
* @param archiveContentRequest The request body
|
||||
* @return
|
||||
*/
|
||||
public RestResponse requestArchiveContent(RestArchiveContentRequestModel archiveContentRequest)
|
||||
{
|
||||
return requestArchiveContent(nodeId, contentPropName, archiveContentRequest);
|
||||
}
|
||||
|
||||
/**
|
||||
* Send version content to archive using POST call on "nodes/{nodeId}/versions/{versionId}/storage-info/{contentPropName}/archive"
|
||||
*
|
||||
* @param archiveContentRequest The request body
|
||||
* @return
|
||||
*/
|
||||
public RestResponse requestArchiveVersionContent(RestArchiveContentRequestModel archiveContentRequest)
|
||||
{
|
||||
return requestArchiveVersionContent(nodeId, contentPropName, versionId, archiveContentRequest);
|
||||
}
|
||||
|
||||
/**
|
||||
* Send content to archive using POST call on "nodes/{nodeId}/storage-info/{contentPropName}/archive"
|
||||
*
|
||||
* @param nodeId The nodeId
|
||||
* @param contentPropName The content property QNAME ie. "cm:content"
|
||||
* @param archiveContentRequest The request body
|
||||
* @return
|
||||
*/
|
||||
public RestResponse requestArchiveContent(String nodeId, String contentPropName, RestArchiveContentRequestModel archiveContentRequest)
|
||||
{
|
||||
RestRequest request = createRestRequestWithBody(HttpMethod.POST, archiveContentRequest, BASE_PATH + ARCHIVE_PATH_SUFFIX, nodeId, contentPropName);
|
||||
return restWrapper.process(request);
|
||||
}
|
||||
|
||||
/**
|
||||
* Send version content to archive using POST call on "nodes/{nodeId}/versions/{versionId}/storage-info/{contentPropName}/archive"
|
||||
*
|
||||
* @param nodeId The nodeId
|
||||
* @param contentPropName The content property QNAME ie. "cm:content"
|
||||
* @param versionId The versionId
|
||||
* @param archiveContentRequest The request body
|
||||
* @return
|
||||
*/
|
||||
public RestResponse requestArchiveVersionContent(String nodeId, String contentPropName, String versionId, RestArchiveContentRequestModel archiveContentRequest)
|
||||
{
|
||||
RestRequest request = createRestRequestWithBody(HttpMethod.POST, archiveContentRequest, VERSIONS_BASE_PATH + ARCHIVE_PATH_SUFFIX, nodeId, versionId, contentPropName);
|
||||
return restWrapper.process(request);
|
||||
}
|
||||
|
||||
/**
|
||||
* Restore content from archive using POST call on "nodes/{nodeId}/storage-info/{contentPropName}/archive-restore"
|
||||
*
|
||||
* @param restoreArchivedContentRequest The request body
|
||||
* @return
|
||||
*/
|
||||
public RestResponse requestRestoreContentFromArchive(RestRestoreArchivedContentRequestModel restoreArchivedContentRequest)
|
||||
{
|
||||
return requestRestoreContentFromArchive(nodeId, contentPropName, restoreArchivedContentRequest);
|
||||
}
|
||||
|
||||
/**
|
||||
* Restore version content from archive using POST call on "nodes/{nodeId}/storage-info/versions/{versionId}/{contentPropName}/archive-restore"
|
||||
*
|
||||
* @param restoreArchivedContentRequest The request body
|
||||
* @return
|
||||
*/
|
||||
public RestResponse requestRestoreVersionContentFromArchive(RestRestoreArchivedContentRequestModel restoreArchivedContentRequest)
|
||||
{
|
||||
return requestRestoreVersionContentFromArchive(nodeId, contentPropName, versionId, restoreArchivedContentRequest);
|
||||
}
|
||||
|
||||
/**
|
||||
* Restore content from archive using POST call on "nodes/{nodeId}/storage-info/{contentPropName}/archive-restore"
|
||||
*
|
||||
* @param nodeId The nodeId
|
||||
* @param contentPropName The content property QNAME ie. "cm:content"
|
||||
* @param restoreArchivedContentRequest The request body
|
||||
* @return
|
||||
*/
|
||||
public RestResponse requestRestoreContentFromArchive(String nodeId, String contentPropName, RestRestoreArchivedContentRequestModel restoreArchivedContentRequest)
|
||||
{
|
||||
RestRequest request = createRestRequestWithBody(HttpMethod.POST, restoreArchivedContentRequest, BASE_PATH +
|
||||
ARCHIVE_RESTORE_PATH_SUFFIX, nodeId, contentPropName);
|
||||
return restWrapper.process(request);
|
||||
}
|
||||
|
||||
/**
|
||||
* Restore version content from archive using POST call on "nodes/{nodeId}/storage-info/{contentPropName}/archive-restore"
|
||||
*
|
||||
* @param nodeId The nodeId
|
||||
* @param contentPropName The content property QNAME ie. "cm:content"
|
||||
* @param versionId The versionId
|
||||
* @param restoreArchivedContentRequest The request body
|
||||
* @return
|
||||
*/
|
||||
public RestResponse requestRestoreVersionContentFromArchive(String nodeId, String contentPropName, String versionId,
|
||||
RestRestoreArchivedContentRequestModel restoreArchivedContentRequest)
|
||||
{
|
||||
RestRequest request = createRestRequestWithBody(HttpMethod.POST, restoreArchivedContentRequest, VERSIONS_BASE_PATH +
|
||||
ARCHIVE_RESTORE_PATH_SUFFIX, nodeId, versionId, contentPropName);
|
||||
return restWrapper.process(request);
|
||||
}
|
||||
|
||||
private RestRequest createRestRequestWithBody(HttpMethod httpMethod, TestModel request, String path, String... pathParams)
|
||||
{
|
||||
if (request != null)
|
||||
{
|
||||
return RestRequest.requestWithBody(httpMethod, request.toJson(), path, pathParams);
|
||||
}
|
||||
else
|
||||
{
|
||||
return RestRequest.simpleRequest(httpMethod, path, pathParams);
|
||||
}
|
||||
}
|
||||
}
|
@@ -499,7 +499,8 @@ public class Node extends ModelRequest<Node>
|
||||
renditionId);
|
||||
RestResponse response = restWrapper.process(request);
|
||||
int retry = 0;
|
||||
while (Integer.valueOf(response.getStatusCode()).equals(HttpStatus.NOT_FOUND.value()) && retry < Utility.retryCountSeconds)
|
||||
//Multiplied by '4' because AI rendition test cases need more time (~30 seconds) - see ACS-2158
|
||||
while (Integer.valueOf(response.getStatusCode()).equals(HttpStatus.NOT_FOUND.value()) && retry < (4 * Utility.retryCountSeconds))
|
||||
{
|
||||
Utility.waitToLoopTime(1);
|
||||
response = restWrapper.process(request);
|
||||
@@ -897,11 +898,33 @@ public class Node extends ModelRequest<Node>
|
||||
|
||||
/**
|
||||
* Get Direct Access URL for a node
|
||||
* @param postBody
|
||||
* @return
|
||||
*/
|
||||
public RestResponse createDirectAccessURL()
|
||||
public RestResponse createDirectAccessURL(String postBody)
|
||||
{
|
||||
RestRequest request = RestRequest.simpleRequest(HttpMethod.POST, "nodes/{nodeId}/request-content-url", this.repoModel.getNodeRef());
|
||||
RestRequest request;
|
||||
if (postBody == null)
|
||||
{
|
||||
request = RestRequest.simpleRequest(HttpMethod.POST, "nodes/{nodeId}/request-direct-access-url", this.repoModel.getNodeRef());
|
||||
}
|
||||
else
|
||||
{
|
||||
request = RestRequest.requestWithBody(HttpMethod.POST, postBody, "nodes/{nodeId}/request-direct-access-url", this.repoModel.getNodeRef());
|
||||
}
|
||||
|
||||
return this.restWrapper.process(request);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get Direct Access URL for a specific node rendition E.g "pdf"
|
||||
* @param renditionId
|
||||
* @return
|
||||
*/
|
||||
public RestResponse createDirectAccessURLforRendition(String renditionId)
|
||||
{
|
||||
RestRequest request = RestRequest
|
||||
.simpleRequest(HttpMethod.POST, "nodes/{nodeId}/renditions/{renditionId}/request-direct-access-url", this.repoModel.getNodeRef(), renditionId);
|
||||
return this.restWrapper.process(request);
|
||||
}
|
||||
|
||||
@@ -913,7 +936,7 @@ public class Node extends ModelRequest<Node>
|
||||
public RestResponse createDirectAccessURLforVersion(String versionId)
|
||||
{
|
||||
RestRequest request = RestRequest
|
||||
.simpleRequest(HttpMethod.POST, "nodes/{nodeId}/versions/{versionId}/request-content-url", this.repoModel.getNodeRef(), versionId);
|
||||
.simpleRequest(HttpMethod.POST, "nodes/{nodeId}/versions/{versionId}/request-direct-access-url", this.repoModel.getNodeRef(), versionId);
|
||||
return this.restWrapper.process(request);
|
||||
}
|
||||
|
||||
@@ -926,20 +949,22 @@ public class Node extends ModelRequest<Node>
|
||||
public RestResponse createDirectAccessURLforVersionAndRendition(String versionId, String renditionId)
|
||||
{
|
||||
RestRequest request = RestRequest
|
||||
.simpleRequest(HttpMethod.POST, "nodes/{nodeId}/versions/{versionId}/renditions/{renditionId}/request-content-url", this.repoModel.getNodeRef(), versionId, renditionId);
|
||||
.simpleRequest(HttpMethod.POST, "nodes/{nodeId}/versions/{versionId}/renditions/{renditionId}/request-direct-access-url", this.repoModel.getNodeRef(), versionId, renditionId);
|
||||
return this.restWrapper.process(request);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get Direct Access URL for a specific node rendition E.g "pdf"
|
||||
* @param renditionId
|
||||
* @return
|
||||
*/
|
||||
public RestResponse createDirectAccessURLforRendition(String renditionId)
|
||||
public ContentStorageInformation usingStorageInfo(String contentPropName)
|
||||
{
|
||||
RestRequest request = RestRequest
|
||||
.simpleRequest(HttpMethod.POST, "nodes/{nodeId}/renditions/{renditionId}/request-content-url", this.repoModel.getNodeRef(), renditionId);
|
||||
return this.restWrapper.process(request);
|
||||
return new ContentStorageInformation(restWrapper)
|
||||
.withNodeId(repoModel.getNodeRef())
|
||||
.withContentPropName(contentPropName);
|
||||
}
|
||||
|
||||
}
|
||||
public ContentStorageInformation usingVersionStorageInfo(String contentPropName, String versionId)
|
||||
{
|
||||
return new ContentStorageInformation(restWrapper)
|
||||
.withNodeId(repoModel.getNodeRef())
|
||||
.withContentPropName(contentPropName)
|
||||
.withVersionId(versionId);
|
||||
}
|
||||
}
|
||||
|
@@ -7,6 +7,7 @@ import org.alfresco.rest.model.RestTagModel;
|
||||
import org.alfresco.rest.model.RestTagModelsCollection;
|
||||
import org.alfresco.rest.requests.Actions;
|
||||
import org.alfresco.rest.requests.Audit;
|
||||
import org.alfresco.rest.requests.ContentStorageInformation;
|
||||
import org.alfresco.rest.requests.Downloads;
|
||||
import org.alfresco.rest.requests.Groups;
|
||||
import org.alfresco.rest.requests.ModelRequest;
|
||||
@@ -98,6 +99,11 @@ public class RestCoreAPI extends ModelRequest<RestCoreAPI>
|
||||
return new Node(restWrapper);
|
||||
}
|
||||
|
||||
public ContentStorageInformation usingStorageInfo()
|
||||
{
|
||||
return new ContentStorageInformation(restWrapper);
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides DSL of all REST calls under <code>/people</code> API path
|
||||
*
|
||||
|
Reference in New Issue
Block a user