mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-10-22 15:12:38 +00:00
Compare commits
13 Commits
20.136
...
forgot-pas
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
07cc9aa86e | ||
|
|
7db550cee1 | ||
|
|
937d80327f | ||
|
|
8abff868cc | ||
|
|
ffae8a62a1 | ||
|
|
0350c966df | ||
|
|
833a7675bc | ||
|
|
8aa263f377 | ||
|
|
73f30b7ef2 | ||
|
|
4bf58cc99c | ||
|
|
d53881d87f | ||
|
|
937601020d | ||
|
|
429b389b08 |
@@ -7,7 +7,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco</groupId>
|
<groupId>org.alfresco</groupId>
|
||||||
<artifactId>alfresco-community-repo-amps</artifactId>
|
<artifactId>alfresco-community-repo-amps</artifactId>
|
||||||
<version>20.136</version>
|
<version>20.140-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<modules>
|
<modules>
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco</groupId>
|
<groupId>org.alfresco</groupId>
|
||||||
<artifactId>alfresco-governance-services-community-parent</artifactId>
|
<artifactId>alfresco-governance-services-community-parent</artifactId>
|
||||||
<version>20.136</version>
|
<version>20.140-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<modules>
|
<modules>
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco</groupId>
|
<groupId>org.alfresco</groupId>
|
||||||
<artifactId>alfresco-governance-services-automation-community-repo</artifactId>
|
<artifactId>alfresco-governance-services-automation-community-repo</artifactId>
|
||||||
<version>20.136</version>
|
<version>20.140-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<build>
|
<build>
|
||||||
|
|||||||
@@ -50,6 +50,7 @@ import org.apache.http.HttpResponse;
|
|||||||
import org.apache.http.HttpStatus;
|
import org.apache.http.HttpStatus;
|
||||||
import org.apache.http.util.EntityUtils;
|
import org.apache.http.util.EntityUtils;
|
||||||
import org.json.JSONObject;
|
import org.json.JSONObject;
|
||||||
|
import org.junit.Ignore;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.testng.AssertJUnit;
|
import org.testng.AssertJUnit;
|
||||||
import org.testng.annotations.BeforeClass;
|
import org.testng.annotations.BeforeClass;
|
||||||
@@ -135,192 +136,195 @@ public class DispositionScheduleLinkedRecordsTest extends BaseRMRestTest {
|
|||||||
* <p>
|
* <p>
|
||||||
* <p/> TestRail Test C775<p/>
|
* <p/> TestRail Test C775<p/>
|
||||||
**/
|
**/
|
||||||
@Test
|
// @Ignore("ACS-5020")
|
||||||
@AlfrescoTest(jira = "RM-1622")
|
// @Test
|
||||||
public void dispositionScheduleLinkedRecords() throws UnsupportedEncodingException {
|
// @AlfrescoTest(jira = "RM-1622")
|
||||||
STEP("Create record category");
|
// public void dispositionScheduleLinkedRecords() throws UnsupportedEncodingException {
|
||||||
Category1 = createRootCategory(categoryRM3077);
|
// STEP("Create record category");
|
||||||
|
// Category1 = createRootCategory(categoryRM3077);
|
||||||
|
//
|
||||||
|
// //create retention schedule
|
||||||
|
// dispositionScheduleService.createCategoryRetentionSchedule(Category1.getName(), false);
|
||||||
|
//
|
||||||
|
// // add cut off step
|
||||||
|
// dispositionScheduleService.addCutOffAfterPeriodStep(Category1.getName(), "day|2", CREATED_DATE);
|
||||||
|
//
|
||||||
|
// //create a copy of the category recordsCategory
|
||||||
|
// String CopyCategoryId = copyCategory(getAdminUser(),Category1.getId(), copyCategoryRM3077);
|
||||||
|
//
|
||||||
|
// // create folders in both categories
|
||||||
|
// CatFolder = createRecordFolder(Category1.getId(), folderRM3077);
|
||||||
|
// CopyCatFolder = createRecordFolder(CopyCategoryId, copyFolderRM3077);
|
||||||
|
//
|
||||||
|
// // create record files
|
||||||
|
// String electronicRecord = "RM-2801 electronic record";
|
||||||
|
// Record elRecord = createElectronicRecord(CatFolder.getId(), electronicRecord);
|
||||||
|
// String elRecordFullName = recordsAPI.getRecordFullName(getDataUser().usingAdmin().getAdminUser().getUsername(),
|
||||||
|
// getDataUser().usingAdmin().getAdminUser().getPassword(), CatFolder.getName(), electronicRecord);
|
||||||
|
//
|
||||||
|
// String nonElectronicRecord = "RM-2801 non-electronic record";
|
||||||
|
// Record nonElRecord = createNonElectronicRecord(CatFolder.getId(), nonElectronicRecord);
|
||||||
|
// String nonElRecordFullName = recordsAPI.getRecordFullName(getDataUser().usingAdmin().getAdminUser().getUsername(),
|
||||||
|
// getDataUser().usingAdmin().getAdminUser().getPassword(), CatFolder.getName(), nonElectronicRecord);
|
||||||
|
//
|
||||||
|
// // link the records to copy folder, then complete them
|
||||||
|
// List<String> recordLists = new ArrayList<>();
|
||||||
|
// recordLists.add(NODE_REF_WORKSPACE_SPACES_STORE + elRecord.getId());
|
||||||
|
// recordLists.add(NODE_REF_WORKSPACE_SPACES_STORE + nonElRecord.getId());
|
||||||
|
//
|
||||||
|
// linksAPI.linkRecord(getDataUser().getAdminUser().getUsername(),
|
||||||
|
// getDataUser().getAdminUser().getPassword(), HttpStatus.SC_OK,copyCategoryRM3077 + "/" +
|
||||||
|
// copyFolderRM3077, recordLists);
|
||||||
|
// recordsAPI.completeRecord(rmAdmin.getUsername(), rmAdmin.getPassword(), elRecordFullName);
|
||||||
|
// recordsAPI.completeRecord(rmAdmin.getUsername(), rmAdmin.getPassword(), nonElRecordFullName);
|
||||||
|
//
|
||||||
|
// // edit disposition date
|
||||||
|
// recordFoldersAPI.postFolderAction(getAdminUser().getUsername(),
|
||||||
|
// getAdminUser().getPassword(),editDispositionDateJson(),CatFolder.getName());
|
||||||
|
//
|
||||||
|
// // cut off the Folder
|
||||||
|
// recordFoldersAPI.postFolderAction(getAdminUser().getUsername(),
|
||||||
|
// getAdminUser().getPassword(),new JSONObject().put("name","cutoff"),CatFolder.getName());
|
||||||
|
//
|
||||||
|
// // Verify the Content
|
||||||
|
// Node electronicNode = getNode(elRecord.getId());
|
||||||
|
// assertTrue("The content of " + electronicRecord + " is available",
|
||||||
|
// StringUtils.isEmpty(electronicNode.getNodeContent().getResponse().getBody().asString()));
|
||||||
|
//
|
||||||
|
// // verify the Properties
|
||||||
|
// AssertJUnit.assertNull("The properties are present even after cutting off the record.", elRecord.getProperties().getTitle());
|
||||||
|
//
|
||||||
|
// // delete precondition
|
||||||
|
// deleteRecordCategory(Category1.getId());
|
||||||
|
// deleteRecordCategory(CopyCategoryId);
|
||||||
|
// }
|
||||||
|
// /**
|
||||||
|
// * Test covering RM-3060
|
||||||
|
// * Check the disposition steps for a record can be executed
|
||||||
|
// * When the record is linked to a folder with the same disposition schedule
|
||||||
|
// * */
|
||||||
|
// @Ignore("ACS-5020")
|
||||||
|
//// @Test
|
||||||
|
// @AlfrescoTest (jira = "RM-3060")
|
||||||
|
// public void sameDispositionScheduleLinkedRecords() throws UnsupportedEncodingException {
|
||||||
|
//
|
||||||
|
// // create a category with retention applied on records level
|
||||||
|
// RecordCategory recordCategory = getRestAPIFactory().getFilePlansAPI(rmAdmin)
|
||||||
|
// .createRootRecordCategory(RecordCategory.builder().name(firstCategoryRM3060).build(),
|
||||||
|
// RecordCategory.DEFAULT_FILE_PLAN_ALIAS);
|
||||||
|
// dispositionScheduleService.createCategoryRetentionSchedule(firstCategoryRM3060, true);
|
||||||
|
// dispositionScheduleService.addCutOffAfterPeriodStep(firstCategoryRM3060, "week|1", DATE_FILED);
|
||||||
|
// dispositionScheduleService.addTransferAfterEventStep(firstCategoryRM3060, TRANSFER_LOCATION, RMEvents.CASE_CLOSED.getEventName());
|
||||||
|
// dispositionScheduleService.addDestroyWithoutGhostingAfterPeriodStep(firstCategoryRM3060, "week|1", CUT_OFF_DATE);
|
||||||
|
//
|
||||||
|
// // make a copy of the category created
|
||||||
|
// String categorySecondId = copyCategory(getAdminUser(), recordCategory.getId(), secondCategoryRM3060);
|
||||||
|
//
|
||||||
|
// // create a folder on the category firstCategoryRM3060 with a complete electronic record
|
||||||
|
// RecordCategoryChild firstFolderRecordCategoryChild = createRecordFolder(recordCategory.getId(),firstFolderRM3060);
|
||||||
|
// Record firstElectronicRecord = createElectronicRecord(firstFolderRecordCategoryChild.getId(),electronicRecordRM3060);
|
||||||
|
//
|
||||||
|
// String elRecordFullName = recordsAPI.getRecordFullName(getDataUser().getAdminUser().getUsername(),
|
||||||
|
// getDataUser().getAdminUser().getPassword(),firstFolderRM3060, electronicRecordRM3060);
|
||||||
|
// String elRecordNameNodeRef = recordsAPI.getRecordNodeRef(getDataUser().usingAdmin().getAdminUser().getUsername(),
|
||||||
|
// getDataUser().usingAdmin().getAdminUser().getPassword(), elRecordFullName, "/" + firstCategoryRM3060 + "/" + firstFolderRM3060);
|
||||||
|
//
|
||||||
|
// recordsAPI.completeRecord(getDataUser().getAdminUser().getUsername(),
|
||||||
|
// getDataUser().getAdminUser().getPassword(), elRecordFullName);
|
||||||
|
//
|
||||||
|
// // create a folder on the category secondCategoryRM3060 with a non electronic record
|
||||||
|
// RecordCategoryChild secondFolderRecordCategoryChild = createRecordFolder(categorySecondId,secondFolderRM3060);
|
||||||
|
// Record secondNonElectronicRecord = createNonElectronicRecord(secondFolderRecordCategoryChild.getId(),nonElectronicRecordRM3060);
|
||||||
|
//
|
||||||
|
// // link the nonElectronicRecordRM3060 to firstFolderRM3060
|
||||||
|
// List<String> recordLists = new ArrayList<>();
|
||||||
|
// recordLists.add(NODE_REF_WORKSPACE_SPACES_STORE + secondNonElectronicRecord.getId());
|
||||||
|
//
|
||||||
|
// linksAPI.linkRecord(getDataUser().getAdminUser().getUsername(),
|
||||||
|
// getDataUser().getAdminUser().getPassword(), HttpStatus.SC_OK,secondCategoryRM3060 + "/" +
|
||||||
|
// secondFolderRM3060, recordLists);
|
||||||
|
// String nonElRecordFullName = recordsAPI.getRecordFullName(getDataUser().usingAdmin().getAdminUser().getUsername(),
|
||||||
|
// getDataUser().usingAdmin().getAdminUser().getPassword(), secondFolderRM3060, secondNonElectronicRecord.getName());
|
||||||
|
// String nonElRecordNameNodeRef = recordsAPI.getRecordNodeRef(getDataUser().usingAdmin().getAdminUser().getUsername(),
|
||||||
|
// getDataUser().usingAdmin().getAdminUser().getPassword(), nonElRecordFullName, "/" + secondCategoryRM3060 + "/" + secondFolderRM3060);
|
||||||
|
//
|
||||||
|
// // complete records and cut them off
|
||||||
|
// recordsAPI.completeRecord(getDataUser().getAdminUser().getUsername(),
|
||||||
|
// getDataUser().getAdminUser().getPassword(), nonElRecordFullName);
|
||||||
|
//
|
||||||
|
// // edit the disposition date
|
||||||
|
// recordFoldersAPI.postRecordAction(getAdminUser().getUsername(),
|
||||||
|
// getAdminUser().getPassword(),editDispositionDateJson(),nonElRecordNameNodeRef);
|
||||||
|
//
|
||||||
|
// // cut off the record
|
||||||
|
// recordFoldersAPI.postRecordAction(getAdminUser().getUsername(),
|
||||||
|
// getAdminUser().getPassword(),new JSONObject().put("name","cutoff"),nonElRecordNameNodeRef);
|
||||||
|
//
|
||||||
|
// //check the record is cut off
|
||||||
|
// AssertJUnit.assertTrue("The file " + nonElectronicRecordRM3060 + " has not been successfully cut off.", getRestAPIFactory().getRecordsAPI().getRecord(secondNonElectronicRecord.getId()).getAspectNames().contains(CUT_OFF_ASPECT));
|
||||||
|
//
|
||||||
|
// // link the electronic record to secondFolderRM3060
|
||||||
|
// recordLists.clear();
|
||||||
|
// recordLists.add(NODE_REF_WORKSPACE_SPACES_STORE + secondNonElectronicRecord.getId());
|
||||||
|
// linksAPI.linkRecord(getDataUser().getAdminUser().getUsername(),
|
||||||
|
// getDataUser().getAdminUser().getPassword(), HttpStatus.SC_OK,secondCategoryRM3060 + "/" +
|
||||||
|
// secondFolderRM3060, recordLists);
|
||||||
|
//
|
||||||
|
// // edit the disposition date and cut off the record
|
||||||
|
// recordFoldersAPI.postRecordAction(getAdminUser().getUsername(),
|
||||||
|
// getAdminUser().getPassword(),editDispositionDateJson(),elRecordNameNodeRef);
|
||||||
|
// recordFoldersAPI.postRecordAction(getAdminUser().getUsername(),
|
||||||
|
// getAdminUser().getPassword(),new JSONObject().put("name","cutoff"),elRecordNameNodeRef);
|
||||||
|
//
|
||||||
|
// AssertJUnit.assertTrue("The file " + electronicRecordRM3060 + " has not been successfully cut off.", getRestAPIFactory().getRecordsAPI().getRecord(firstElectronicRecord.getId()).getAspectNames().contains(CUT_OFF_ASPECT));
|
||||||
|
//
|
||||||
|
// // open the record and complete the disposition schedule event
|
||||||
|
// rmRolesAndActionsAPI.completeEvent(getAdminUser().getUsername(),
|
||||||
|
// getAdminUser().getPassword(), elRecordFullName, RMEvents.CASE_CLOSED, Instant.now());
|
||||||
|
// rmRolesAndActionsAPI.completeEvent(getAdminUser().getUsername(),
|
||||||
|
// getAdminUser().getPassword(), nonElRecordFullName, RMEvents.CASE_CLOSED, Instant.now());
|
||||||
|
//
|
||||||
|
// // transfer the files & complete transfers
|
||||||
|
// HttpResponse nonElRecordNameHttpResponse = recordFoldersAPI.postRecordAction(getAdminUser().getUsername(),
|
||||||
|
// getAdminUser().getPassword(),new JSONObject().put("name","transfer"),recordsAPI.getRecordNodeRef(getDataUser().usingAdmin().getAdminUser().getUsername(),
|
||||||
|
// getDataUser().usingAdmin().getAdminUser().getPassword(), nonElRecordFullName, "/" + secondCategoryRM3060 + "/" + secondFolderRM3060));
|
||||||
|
//
|
||||||
|
// String nonElRecordNameTransferId = getTransferId(nonElRecordNameHttpResponse,nonElRecordNameNodeRef);
|
||||||
|
// recordFoldersAPI.postRecordAction(getAdminUser().getUsername(),
|
||||||
|
// getAdminUser().getPassword(),new JSONObject().put("name","transferComplete"),nonElRecordNameTransferId);
|
||||||
|
//
|
||||||
|
// HttpResponse elRecordNameHttpResponse = recordFoldersAPI.postRecordAction(getAdminUser().getUsername(),
|
||||||
|
// getAdminUser().getPassword(),new JSONObject().put("name","transfer"),recordsAPI.getRecordNodeRef(getDataUser().usingAdmin().getAdminUser().getUsername(),
|
||||||
|
// getDataUser().usingAdmin().getAdminUser().getPassword(), elRecordFullName, "/" + firstCategoryRM3060 + "/" + firstFolderRM3060));
|
||||||
|
//
|
||||||
|
// String elRecordNameTransferId = getTransferId(elRecordNameHttpResponse,elRecordNameNodeRef);
|
||||||
|
// recordFoldersAPI.postRecordAction(getAdminUser().getUsername(),
|
||||||
|
// getAdminUser().getPassword(),new JSONObject().put("name","transferComplete"),elRecordNameTransferId);
|
||||||
|
//
|
||||||
|
// AssertJUnit.assertTrue("The file " + electronicRecordRM3060 + " has not been successfully transferred", getRestAPIFactory().getRecordsAPI().getRecord(firstElectronicRecord.getId()).getAspectNames().contains(TRANSFER_TYPE));
|
||||||
|
// AssertJUnit.assertTrue("The file " + nonElectronicRecordRM3060 + " has not been successfully transferred.", getRestAPIFactory().getRecordsAPI().getRecord(secondNonElectronicRecord.getId()).getAspectNames().contains(TRANSFER_TYPE));
|
||||||
|
//
|
||||||
|
// // edit the disposition date for nonElectronicRecordRM3060 & electronicRecordRM3060
|
||||||
|
// recordFoldersAPI.postRecordAction(getAdminUser().getUsername(),
|
||||||
|
// getAdminUser().getPassword(),editDispositionDateJson(),nonElRecordNameNodeRef);
|
||||||
|
// recordFoldersAPI.postRecordAction(getAdminUser().getUsername(),
|
||||||
|
// getAdminUser().getPassword(),editDispositionDateJson(),elRecordNameNodeRef);
|
||||||
|
//
|
||||||
|
// // destroy nonElectronicRecordRM3060 & electronicRecordRM3060 records
|
||||||
|
// recordFoldersAPI.postRecordAction(getAdminUser().getUsername(),
|
||||||
|
// getAdminUser().getPassword(),new JSONObject().put("name","destroy"),nonElRecordNameNodeRef);
|
||||||
|
// recordFoldersAPI.postRecordAction(getAdminUser().getUsername(),
|
||||||
|
// getAdminUser().getPassword(),new JSONObject().put("name","destroy"),elRecordNameNodeRef);
|
||||||
|
//
|
||||||
|
// // check the file is not displayed
|
||||||
|
// assertNull("The file " + nonElectronicRecordRM3060 + " has not been successfully destroyed.", secondNonElectronicRecord.getContent());
|
||||||
|
// assertNull("The file " + electronicRecordRM3060 + " has not been successfully destroyed.", firstElectronicRecord.getContent());
|
||||||
|
//
|
||||||
|
// // delete precondition
|
||||||
|
// deleteRecordCategory(recordCategory.getId());
|
||||||
|
// deleteRecordCategory(categorySecondId);
|
||||||
|
// }
|
||||||
|
|
||||||
//create retention schedule
|
|
||||||
dispositionScheduleService.createCategoryRetentionSchedule(Category1.getName(), false);
|
|
||||||
|
|
||||||
// add cut off step
|
|
||||||
dispositionScheduleService.addCutOffAfterPeriodStep(Category1.getName(), "day|2", CREATED_DATE);
|
|
||||||
|
|
||||||
//create a copy of the category recordsCategory
|
|
||||||
String CopyCategoryId = copyCategory(getAdminUser(),Category1.getId(), copyCategoryRM3077);
|
|
||||||
|
|
||||||
// create folders in both categories
|
|
||||||
CatFolder = createRecordFolder(Category1.getId(), folderRM3077);
|
|
||||||
CopyCatFolder = createRecordFolder(CopyCategoryId, copyFolderRM3077);
|
|
||||||
|
|
||||||
// create record files
|
|
||||||
String electronicRecord = "RM-2801 electronic record";
|
|
||||||
Record elRecord = createElectronicRecord(CatFolder.getId(), electronicRecord);
|
|
||||||
String elRecordFullName = recordsAPI.getRecordFullName(getDataUser().usingAdmin().getAdminUser().getUsername(),
|
|
||||||
getDataUser().usingAdmin().getAdminUser().getPassword(), CatFolder.getName(), electronicRecord);
|
|
||||||
|
|
||||||
String nonElectronicRecord = "RM-2801 non-electronic record";
|
|
||||||
Record nonElRecord = createNonElectronicRecord(CatFolder.getId(), nonElectronicRecord);
|
|
||||||
String nonElRecordFullName = recordsAPI.getRecordFullName(getDataUser().usingAdmin().getAdminUser().getUsername(),
|
|
||||||
getDataUser().usingAdmin().getAdminUser().getPassword(), CatFolder.getName(), nonElectronicRecord);
|
|
||||||
|
|
||||||
// link the records to copy folder, then complete them
|
|
||||||
List<String> recordLists = new ArrayList<>();
|
|
||||||
recordLists.add(NODE_REF_WORKSPACE_SPACES_STORE + elRecord.getId());
|
|
||||||
recordLists.add(NODE_REF_WORKSPACE_SPACES_STORE + nonElRecord.getId());
|
|
||||||
|
|
||||||
linksAPI.linkRecord(getDataUser().getAdminUser().getUsername(),
|
|
||||||
getDataUser().getAdminUser().getPassword(), HttpStatus.SC_OK,copyCategoryRM3077 + "/" +
|
|
||||||
copyFolderRM3077, recordLists);
|
|
||||||
recordsAPI.completeRecord(rmAdmin.getUsername(), rmAdmin.getPassword(), elRecordFullName);
|
|
||||||
recordsAPI.completeRecord(rmAdmin.getUsername(), rmAdmin.getPassword(), nonElRecordFullName);
|
|
||||||
|
|
||||||
// edit disposition date
|
|
||||||
recordFoldersAPI.postFolderAction(getAdminUser().getUsername(),
|
|
||||||
getAdminUser().getPassword(),editDispositionDateJson(),CatFolder.getName());
|
|
||||||
|
|
||||||
// cut off the Folder
|
|
||||||
recordFoldersAPI.postFolderAction(getAdminUser().getUsername(),
|
|
||||||
getAdminUser().getPassword(),new JSONObject().put("name","cutoff"),CatFolder.getName());
|
|
||||||
|
|
||||||
// Verify the Content
|
|
||||||
Node electronicNode = getNode(elRecord.getId());
|
|
||||||
assertTrue("The content of " + electronicRecord + " is available",
|
|
||||||
StringUtils.isEmpty(electronicNode.getNodeContent().getResponse().getBody().asString()));
|
|
||||||
|
|
||||||
// verify the Properties
|
|
||||||
AssertJUnit.assertNull("The properties are present even after cutting off the record.", elRecord.getProperties().getTitle());
|
|
||||||
|
|
||||||
// delete precondition
|
|
||||||
deleteRecordCategory(Category1.getId());
|
|
||||||
deleteRecordCategory(CopyCategoryId);
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* Test covering RM-3060
|
|
||||||
* Check the disposition steps for a record can be executed
|
|
||||||
* When the record is linked to a folder with the same disposition schedule
|
|
||||||
* */
|
|
||||||
@Test
|
|
||||||
@AlfrescoTest (jira = "RM-3060")
|
|
||||||
public void sameDispositionScheduleLinkedRecords() throws UnsupportedEncodingException {
|
|
||||||
|
|
||||||
// create a category with retention applied on records level
|
|
||||||
RecordCategory recordCategory = getRestAPIFactory().getFilePlansAPI(rmAdmin)
|
|
||||||
.createRootRecordCategory(RecordCategory.builder().name(firstCategoryRM3060).build(),
|
|
||||||
RecordCategory.DEFAULT_FILE_PLAN_ALIAS);
|
|
||||||
dispositionScheduleService.createCategoryRetentionSchedule(firstCategoryRM3060, true);
|
|
||||||
dispositionScheduleService.addCutOffAfterPeriodStep(firstCategoryRM3060, "week|1", DATE_FILED);
|
|
||||||
dispositionScheduleService.addTransferAfterEventStep(firstCategoryRM3060, TRANSFER_LOCATION, RMEvents.CASE_CLOSED.getEventName());
|
|
||||||
dispositionScheduleService.addDestroyWithoutGhostingAfterPeriodStep(firstCategoryRM3060, "week|1", CUT_OFF_DATE);
|
|
||||||
|
|
||||||
// make a copy of the category created
|
|
||||||
String categorySecondId = copyCategory(getAdminUser(), recordCategory.getId(), secondCategoryRM3060);
|
|
||||||
|
|
||||||
// create a folder on the category firstCategoryRM3060 with a complete electronic record
|
|
||||||
RecordCategoryChild firstFolderRecordCategoryChild = createRecordFolder(recordCategory.getId(),firstFolderRM3060);
|
|
||||||
Record firstElectronicRecord = createElectronicRecord(firstFolderRecordCategoryChild.getId(),electronicRecordRM3060);
|
|
||||||
|
|
||||||
String elRecordFullName = recordsAPI.getRecordFullName(getDataUser().getAdminUser().getUsername(),
|
|
||||||
getDataUser().getAdminUser().getPassword(),firstFolderRM3060, electronicRecordRM3060);
|
|
||||||
String elRecordNameNodeRef = recordsAPI.getRecordNodeRef(getDataUser().usingAdmin().getAdminUser().getUsername(),
|
|
||||||
getDataUser().usingAdmin().getAdminUser().getPassword(), elRecordFullName, "/" + firstCategoryRM3060 + "/" + firstFolderRM3060);
|
|
||||||
|
|
||||||
recordsAPI.completeRecord(getDataUser().getAdminUser().getUsername(),
|
|
||||||
getDataUser().getAdminUser().getPassword(), elRecordFullName);
|
|
||||||
|
|
||||||
// create a folder on the category secondCategoryRM3060 with a non electronic record
|
|
||||||
RecordCategoryChild secondFolderRecordCategoryChild = createRecordFolder(categorySecondId,secondFolderRM3060);
|
|
||||||
Record secondNonElectronicRecord = createNonElectronicRecord(secondFolderRecordCategoryChild.getId(),nonElectronicRecordRM3060);
|
|
||||||
|
|
||||||
// link the nonElectronicRecordRM3060 to firstFolderRM3060
|
|
||||||
List<String> recordLists = new ArrayList<>();
|
|
||||||
recordLists.add(NODE_REF_WORKSPACE_SPACES_STORE + secondNonElectronicRecord.getId());
|
|
||||||
|
|
||||||
linksAPI.linkRecord(getDataUser().getAdminUser().getUsername(),
|
|
||||||
getDataUser().getAdminUser().getPassword(), HttpStatus.SC_OK,secondCategoryRM3060 + "/" +
|
|
||||||
secondFolderRM3060, recordLists);
|
|
||||||
String nonElRecordFullName = recordsAPI.getRecordFullName(getDataUser().usingAdmin().getAdminUser().getUsername(),
|
|
||||||
getDataUser().usingAdmin().getAdminUser().getPassword(), secondFolderRM3060, secondNonElectronicRecord.getName());
|
|
||||||
String nonElRecordNameNodeRef = recordsAPI.getRecordNodeRef(getDataUser().usingAdmin().getAdminUser().getUsername(),
|
|
||||||
getDataUser().usingAdmin().getAdminUser().getPassword(), nonElRecordFullName, "/" + secondCategoryRM3060 + "/" + secondFolderRM3060);
|
|
||||||
|
|
||||||
// complete records and cut them off
|
|
||||||
recordsAPI.completeRecord(getDataUser().getAdminUser().getUsername(),
|
|
||||||
getDataUser().getAdminUser().getPassword(), nonElRecordFullName);
|
|
||||||
|
|
||||||
// edit the disposition date
|
|
||||||
recordFoldersAPI.postRecordAction(getAdminUser().getUsername(),
|
|
||||||
getAdminUser().getPassword(),editDispositionDateJson(),nonElRecordNameNodeRef);
|
|
||||||
|
|
||||||
// cut off the record
|
|
||||||
recordFoldersAPI.postRecordAction(getAdminUser().getUsername(),
|
|
||||||
getAdminUser().getPassword(),new JSONObject().put("name","cutoff"),nonElRecordNameNodeRef);
|
|
||||||
|
|
||||||
//check the record is cut off
|
|
||||||
AssertJUnit.assertTrue("The file " + nonElectronicRecordRM3060 + " has not been successfully cut off.", getRestAPIFactory().getRecordsAPI().getRecord(secondNonElectronicRecord.getId()).getAspectNames().contains(CUT_OFF_ASPECT));
|
|
||||||
|
|
||||||
// link the electronic record to secondFolderRM3060
|
|
||||||
recordLists.clear();
|
|
||||||
recordLists.add(NODE_REF_WORKSPACE_SPACES_STORE + secondNonElectronicRecord.getId());
|
|
||||||
linksAPI.linkRecord(getDataUser().getAdminUser().getUsername(),
|
|
||||||
getDataUser().getAdminUser().getPassword(), HttpStatus.SC_OK,secondCategoryRM3060 + "/" +
|
|
||||||
secondFolderRM3060, recordLists);
|
|
||||||
|
|
||||||
// edit the disposition date and cut off the record
|
|
||||||
recordFoldersAPI.postRecordAction(getAdminUser().getUsername(),
|
|
||||||
getAdminUser().getPassword(),editDispositionDateJson(),elRecordNameNodeRef);
|
|
||||||
recordFoldersAPI.postRecordAction(getAdminUser().getUsername(),
|
|
||||||
getAdminUser().getPassword(),new JSONObject().put("name","cutoff"),elRecordNameNodeRef);
|
|
||||||
|
|
||||||
AssertJUnit.assertTrue("The file " + electronicRecordRM3060 + " has not been successfully cut off.", getRestAPIFactory().getRecordsAPI().getRecord(firstElectronicRecord.getId()).getAspectNames().contains(CUT_OFF_ASPECT));
|
|
||||||
|
|
||||||
// open the record and complete the disposition schedule event
|
|
||||||
rmRolesAndActionsAPI.completeEvent(getAdminUser().getUsername(),
|
|
||||||
getAdminUser().getPassword(), elRecordFullName, RMEvents.CASE_CLOSED, Instant.now());
|
|
||||||
rmRolesAndActionsAPI.completeEvent(getAdminUser().getUsername(),
|
|
||||||
getAdminUser().getPassword(), nonElRecordFullName, RMEvents.CASE_CLOSED, Instant.now());
|
|
||||||
|
|
||||||
// transfer the files & complete transfers
|
|
||||||
HttpResponse nonElRecordNameHttpResponse = recordFoldersAPI.postRecordAction(getAdminUser().getUsername(),
|
|
||||||
getAdminUser().getPassword(),new JSONObject().put("name","transfer"),recordsAPI.getRecordNodeRef(getDataUser().usingAdmin().getAdminUser().getUsername(),
|
|
||||||
getDataUser().usingAdmin().getAdminUser().getPassword(), nonElRecordFullName, "/" + secondCategoryRM3060 + "/" + secondFolderRM3060));
|
|
||||||
|
|
||||||
String nonElRecordNameTransferId = getTransferId(nonElRecordNameHttpResponse,nonElRecordNameNodeRef);
|
|
||||||
recordFoldersAPI.postRecordAction(getAdminUser().getUsername(),
|
|
||||||
getAdminUser().getPassword(),new JSONObject().put("name","transferComplete"),nonElRecordNameTransferId);
|
|
||||||
|
|
||||||
HttpResponse elRecordNameHttpResponse = recordFoldersAPI.postRecordAction(getAdminUser().getUsername(),
|
|
||||||
getAdminUser().getPassword(),new JSONObject().put("name","transfer"),recordsAPI.getRecordNodeRef(getDataUser().usingAdmin().getAdminUser().getUsername(),
|
|
||||||
getDataUser().usingAdmin().getAdminUser().getPassword(), elRecordFullName, "/" + firstCategoryRM3060 + "/" + firstFolderRM3060));
|
|
||||||
|
|
||||||
String elRecordNameTransferId = getTransferId(elRecordNameHttpResponse,elRecordNameNodeRef);
|
|
||||||
recordFoldersAPI.postRecordAction(getAdminUser().getUsername(),
|
|
||||||
getAdminUser().getPassword(),new JSONObject().put("name","transferComplete"),elRecordNameTransferId);
|
|
||||||
|
|
||||||
AssertJUnit.assertTrue("The file " + electronicRecordRM3060 + " has not been successfully transferred", getRestAPIFactory().getRecordsAPI().getRecord(firstElectronicRecord.getId()).getAspectNames().contains(TRANSFER_TYPE));
|
|
||||||
AssertJUnit.assertTrue("The file " + nonElectronicRecordRM3060 + " has not been successfully transferred.", getRestAPIFactory().getRecordsAPI().getRecord(secondNonElectronicRecord.getId()).getAspectNames().contains(TRANSFER_TYPE));
|
|
||||||
|
|
||||||
// edit the disposition date for nonElectronicRecordRM3060 & electronicRecordRM3060
|
|
||||||
recordFoldersAPI.postRecordAction(getAdminUser().getUsername(),
|
|
||||||
getAdminUser().getPassword(),editDispositionDateJson(),nonElRecordNameNodeRef);
|
|
||||||
recordFoldersAPI.postRecordAction(getAdminUser().getUsername(),
|
|
||||||
getAdminUser().getPassword(),editDispositionDateJson(),elRecordNameNodeRef);
|
|
||||||
|
|
||||||
// destroy nonElectronicRecordRM3060 & electronicRecordRM3060 records
|
|
||||||
recordFoldersAPI.postRecordAction(getAdminUser().getUsername(),
|
|
||||||
getAdminUser().getPassword(),new JSONObject().put("name","destroy"),nonElRecordNameNodeRef);
|
|
||||||
recordFoldersAPI.postRecordAction(getAdminUser().getUsername(),
|
|
||||||
getAdminUser().getPassword(),new JSONObject().put("name","destroy"),elRecordNameNodeRef);
|
|
||||||
|
|
||||||
// check the file is not displayed
|
|
||||||
assertNull("The file " + nonElectronicRecordRM3060 + " has not been successfully destroyed.", secondNonElectronicRecord.getContent());
|
|
||||||
assertNull("The file " + electronicRecordRM3060 + " has not been successfully destroyed.", firstElectronicRecord.getContent());
|
|
||||||
|
|
||||||
// delete precondition
|
|
||||||
deleteRecordCategory(recordCategory.getId());
|
|
||||||
deleteRecordCategory(categorySecondId);
|
|
||||||
}
|
|
||||||
private String copyCategory(UserModel user, String categoryId, String copyName) {
|
private String copyCategory(UserModel user, String categoryId, String copyName) {
|
||||||
RepoTestModel repoTestModel = new RepoTestModel() {};
|
RepoTestModel repoTestModel = new RepoTestModel() {};
|
||||||
repoTestModel.setNodeRef(categoryId);
|
repoTestModel.setNodeRef(categoryId);
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco</groupId>
|
<groupId>org.alfresco</groupId>
|
||||||
<artifactId>alfresco-governance-services-community-parent</artifactId>
|
<artifactId>alfresco-governance-services-community-parent</artifactId>
|
||||||
<version>20.136</version>
|
<version>20.140-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<modules>
|
<modules>
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco</groupId>
|
<groupId>org.alfresco</groupId>
|
||||||
<artifactId>alfresco-governance-services-community-repo-parent</artifactId>
|
<artifactId>alfresco-governance-services-community-repo-parent</artifactId>
|
||||||
<version>20.136</version>
|
<version>20.140-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco</groupId>
|
<groupId>org.alfresco</groupId>
|
||||||
<artifactId>alfresco-governance-services-community-repo-parent</artifactId>
|
<artifactId>alfresco-governance-services-community-repo-parent</artifactId>
|
||||||
<version>20.136</version>
|
<version>20.140-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<build>
|
<build>
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco</groupId>
|
<groupId>org.alfresco</groupId>
|
||||||
<artifactId>alfresco-community-repo</artifactId>
|
<artifactId>alfresco-community-repo</artifactId>
|
||||||
<version>20.136</version>
|
<version>20.140-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<modules>
|
<modules>
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco</groupId>
|
<groupId>org.alfresco</groupId>
|
||||||
<artifactId>alfresco-community-repo-amps</artifactId>
|
<artifactId>alfresco-community-repo-amps</artifactId>
|
||||||
<version>20.136</version>
|
<version>20.140-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco</groupId>
|
<groupId>org.alfresco</groupId>
|
||||||
<artifactId>alfresco-community-repo</artifactId>
|
<artifactId>alfresco-community-repo</artifactId>
|
||||||
<version>20.136</version>
|
<version>20.140-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<dependencies>
|
<dependencies>
|
||||||
|
|||||||
@@ -22,18 +22,21 @@ package org.alfresco.httpclient;
|
|||||||
import javax.net.ssl.KeyManager;
|
import javax.net.ssl.KeyManager;
|
||||||
import javax.net.ssl.SSLContext;
|
import javax.net.ssl.SSLContext;
|
||||||
import javax.net.ssl.TrustManager;
|
import javax.net.ssl.TrustManager;
|
||||||
|
|
||||||
import org.alfresco.error.AlfrescoRuntimeException;
|
import org.alfresco.error.AlfrescoRuntimeException;
|
||||||
import org.apache.http.HttpHost;
|
import org.apache.http.HttpHost;
|
||||||
import org.apache.http.HttpRequestInterceptor;
|
import org.apache.http.HttpRequestInterceptor;
|
||||||
import org.apache.http.client.config.RequestConfig;
|
import org.apache.http.client.config.RequestConfig;
|
||||||
|
import org.apache.http.config.RegistryBuilder;
|
||||||
import org.apache.http.conn.HttpClientConnectionManager;
|
import org.apache.http.conn.HttpClientConnectionManager;
|
||||||
|
import org.apache.http.conn.socket.ConnectionSocketFactory;
|
||||||
|
import org.apache.http.conn.socket.PlainConnectionSocketFactory;
|
||||||
import org.apache.http.conn.ssl.NoopHostnameVerifier;
|
import org.apache.http.conn.ssl.NoopHostnameVerifier;
|
||||||
import org.apache.http.conn.ssl.SSLConnectionSocketFactory;
|
import org.apache.http.conn.ssl.SSLConnectionSocketFactory;
|
||||||
import org.apache.http.impl.client.CloseableHttpClient;
|
import org.apache.http.impl.client.CloseableHttpClient;
|
||||||
import org.apache.http.impl.client.HttpClientBuilder;
|
import org.apache.http.impl.client.HttpClientBuilder;
|
||||||
import org.apache.http.impl.client.HttpClients;
|
import org.apache.http.impl.client.HttpClients;
|
||||||
import org.apache.http.impl.client.StandardHttpRequestRetryHandler;
|
import org.apache.http.impl.client.StandardHttpRequestRetryHandler;
|
||||||
|
import org.apache.http.impl.conn.PoolingHttpClientConnectionManager;
|
||||||
|
|
||||||
|
|
||||||
public class HttpClient4Factory
|
public class HttpClient4Factory
|
||||||
@@ -79,19 +82,19 @@ public class HttpClient4Factory
|
|||||||
throw new HttpClientException(msg);
|
throw new HttpClientException(msg);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
clientBuilder.setSSLSocketFactory(getSslConnectionSocketFactory(config));
|
||||||
SSLConnectionSocketFactory sslConnectionSocketFactory = new SSLConnectionSocketFactory(
|
|
||||||
createSSLContext(config),
|
|
||||||
new String[] { TLS_V_1_2, TLS_V_1_3 },
|
|
||||||
null,
|
|
||||||
config.isHostnameVerificationDisabled() ? new NoopHostnameVerifier() : SSLConnectionSocketFactory.getDefaultHostnameVerifier());
|
|
||||||
clientBuilder.setSSLSocketFactory(sslConnectionSocketFactory);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if(connectionManager != null)
|
if (connectionManager != null)
|
||||||
{
|
{
|
||||||
clientBuilder.setConnectionManager(connectionManager);
|
clientBuilder.setConnectionManager(connectionManager);
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
//Setting a connectionManager overrides these properties
|
||||||
|
clientBuilder.setMaxConnTotal(config.getMaxTotalConnections());
|
||||||
|
clientBuilder.setMaxConnPerRoute(config.getMaxHostConnections());
|
||||||
|
}
|
||||||
|
|
||||||
RequestConfig requestConfig = RequestConfig.custom()
|
RequestConfig requestConfig = RequestConfig.custom()
|
||||||
.setConnectTimeout(config.getConnectionTimeout())
|
.setConnectTimeout(config.getConnectionTimeout())
|
||||||
@@ -100,11 +103,41 @@ public class HttpClient4Factory
|
|||||||
.build();
|
.build();
|
||||||
|
|
||||||
clientBuilder.setDefaultRequestConfig(requestConfig);
|
clientBuilder.setDefaultRequestConfig(requestConfig);
|
||||||
clientBuilder.setMaxConnTotal(config.getMaxTotalConnections());
|
|
||||||
clientBuilder.setMaxConnPerRoute(config.getMaxHostConnections());
|
|
||||||
clientBuilder.setRetryHandler(new StandardHttpRequestRetryHandler(5, false));
|
clientBuilder.setRetryHandler(new StandardHttpRequestRetryHandler(5, false));
|
||||||
|
|
||||||
return clientBuilder.build();
|
return clientBuilder.build();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static SSLConnectionSocketFactory getSslConnectionSocketFactory(HttpClientConfig config)
|
||||||
|
{
|
||||||
|
return new SSLConnectionSocketFactory(
|
||||||
|
createSSLContext(config),
|
||||||
|
new String[] { TLS_V_1_2, TLS_V_1_3 },
|
||||||
|
null,
|
||||||
|
config.isHostnameVerificationDisabled() ? new NoopHostnameVerifier() : SSLConnectionSocketFactory.getDefaultHostnameVerifier());
|
||||||
|
}
|
||||||
|
|
||||||
|
public static PoolingHttpClientConnectionManager createPoolingConnectionManager(HttpClientConfig config)
|
||||||
|
{
|
||||||
|
PoolingHttpClientConnectionManager poolingHttpClientConnectionManager;
|
||||||
|
if(config.isMTLSEnabled())
|
||||||
|
{
|
||||||
|
poolingHttpClientConnectionManager = new PoolingHttpClientConnectionManager(
|
||||||
|
RegistryBuilder.<ConnectionSocketFactory>create()
|
||||||
|
.register("https", getSslConnectionSocketFactory(config))
|
||||||
|
.build());
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
poolingHttpClientConnectionManager = new PoolingHttpClientConnectionManager(
|
||||||
|
RegistryBuilder.<ConnectionSocketFactory>create()
|
||||||
|
.register("http", PlainConnectionSocketFactory.getSocketFactory())
|
||||||
|
.build());
|
||||||
|
}
|
||||||
|
poolingHttpClientConnectionManager.setMaxTotal(config.getMaxTotalConnections());
|
||||||
|
poolingHttpClientConnectionManager.setDefaultMaxPerRoute(config.getMaxHostConnections());
|
||||||
|
|
||||||
|
return poolingHttpClientConnectionManager;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco</groupId>
|
<groupId>org.alfresco</groupId>
|
||||||
<artifactId>alfresco-community-repo</artifactId>
|
<artifactId>alfresco-community-repo</artifactId>
|
||||||
<version>20.136</version>
|
<version>20.140-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco</groupId>
|
<groupId>org.alfresco</groupId>
|
||||||
<artifactId>alfresco-community-repo</artifactId>
|
<artifactId>alfresco-community-repo</artifactId>
|
||||||
<version>20.136</version>
|
<version>20.140-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<dependencies>
|
<dependencies>
|
||||||
|
|||||||
@@ -9,6 +9,6 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco</groupId>
|
<groupId>org.alfresco</groupId>
|
||||||
<artifactId>alfresco-community-repo-packaging</artifactId>
|
<artifactId>alfresco-community-repo-packaging</artifactId>
|
||||||
<version>20.136</version>
|
<version>20.140-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
</project>
|
</project>
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco</groupId>
|
<groupId>org.alfresco</groupId>
|
||||||
<artifactId>alfresco-community-repo-packaging</artifactId>
|
<artifactId>alfresco-community-repo-packaging</artifactId>
|
||||||
<version>20.136</version>
|
<version>20.140-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco</groupId>
|
<groupId>org.alfresco</groupId>
|
||||||
<artifactId>alfresco-community-repo</artifactId>
|
<artifactId>alfresco-community-repo</artifactId>
|
||||||
<version>20.136</version>
|
<version>20.140-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<modules>
|
<modules>
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco</groupId>
|
<groupId>org.alfresco</groupId>
|
||||||
<artifactId>alfresco-community-repo-packaging</artifactId>
|
<artifactId>alfresco-community-repo-packaging</artifactId>
|
||||||
<version>20.136</version>
|
<version>20.140-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<modules>
|
<modules>
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco</groupId>
|
<groupId>org.alfresco</groupId>
|
||||||
<artifactId>alfresco-community-repo-tests</artifactId>
|
<artifactId>alfresco-community-repo-tests</artifactId>
|
||||||
<version>20.136</version>
|
<version>20.140-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<organization>
|
<organization>
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco</groupId>
|
<groupId>org.alfresco</groupId>
|
||||||
<artifactId>alfresco-community-repo-tests</artifactId>
|
<artifactId>alfresco-community-repo-tests</artifactId>
|
||||||
<version>20.136</version>
|
<version>20.140-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<developers>
|
<developers>
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco</groupId>
|
<groupId>org.alfresco</groupId>
|
||||||
<artifactId>alfresco-community-repo-tests</artifactId>
|
<artifactId>alfresco-community-repo-tests</artifactId>
|
||||||
<version>20.136</version>
|
<version>20.140-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<developers>
|
<developers>
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco</groupId>
|
<groupId>org.alfresco</groupId>
|
||||||
<artifactId>alfresco-community-repo-tests</artifactId>
|
<artifactId>alfresco-community-repo-tests</artifactId>
|
||||||
<version>20.136</version>
|
<version>20.140-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco</groupId>
|
<groupId>org.alfresco</groupId>
|
||||||
<artifactId>alfresco-community-repo-tests</artifactId>
|
<artifactId>alfresco-community-repo-tests</artifactId>
|
||||||
<version>20.136</version>
|
<version>20.140-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<developers>
|
<developers>
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco</groupId>
|
<groupId>org.alfresco</groupId>
|
||||||
<artifactId>alfresco-community-repo-packaging</artifactId>
|
<artifactId>alfresco-community-repo-packaging</artifactId>
|
||||||
<version>20.136</version>
|
<version>20.140-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
|
|||||||
4
pom.xml
4
pom.xml
@@ -2,7 +2,7 @@
|
|||||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
<artifactId>alfresco-community-repo</artifactId>
|
<artifactId>alfresco-community-repo</artifactId>
|
||||||
<version>20.136</version>
|
<version>20.140-SNAPSHOT</version>
|
||||||
<packaging>pom</packaging>
|
<packaging>pom</packaging>
|
||||||
<name>Alfresco Community Repo Parent</name>
|
<name>Alfresco Community Repo Parent</name>
|
||||||
|
|
||||||
@@ -150,7 +150,7 @@
|
|||||||
<connection>scm:git:https://github.com/Alfresco/alfresco-community-repo.git</connection>
|
<connection>scm:git:https://github.com/Alfresco/alfresco-community-repo.git</connection>
|
||||||
<developerConnection>scm:git:https://github.com/Alfresco/alfresco-community-repo.git</developerConnection>
|
<developerConnection>scm:git:https://github.com/Alfresco/alfresco-community-repo.git</developerConnection>
|
||||||
<url>https://github.com/Alfresco/alfresco-community-repo</url>
|
<url>https://github.com/Alfresco/alfresco-community-repo</url>
|
||||||
<tag>20.136</tag>
|
<tag>HEAD</tag>
|
||||||
</scm>
|
</scm>
|
||||||
|
|
||||||
<distributionManagement>
|
<distributionManagement>
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco</groupId>
|
<groupId>org.alfresco</groupId>
|
||||||
<artifactId>alfresco-community-repo</artifactId>
|
<artifactId>alfresco-community-repo</artifactId>
|
||||||
<version>20.136</version>
|
<version>20.140-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<dependencies>
|
<dependencies>
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco</groupId>
|
<groupId>org.alfresco</groupId>
|
||||||
<artifactId>alfresco-community-repo</artifactId>
|
<artifactId>alfresco-community-repo</artifactId>
|
||||||
<version>20.136</version>
|
<version>20.140-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<dependencies>
|
<dependencies>
|
||||||
@@ -809,6 +809,10 @@
|
|||||||
<artifactId>reflections</artifactId>
|
<artifactId>reflections</artifactId>
|
||||||
<scope>test</scope>
|
<scope>test</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>commons-lang</groupId>
|
||||||
|
<artifactId>commons-lang</artifactId>
|
||||||
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
<build>
|
<build>
|
||||||
|
|||||||
Reference in New Issue
Block a user