void doUpdateRecords(HttpServletRequest request, HttpServletResponse response, int serviceCall) throws ServletException, IOException, RecordServicesException { MetadataSchemaTypes schemaTypes = getSchemaTypes(COLLECTION); MetadataSchema schema = schemaTypes.getSchema("folder_default"); int sizeInOctets = getRequiredIntegerParameter(request, SIZE_IN_OCTETS_PARAMETER); int qty = getRequiredIntegerParameter(request, QUANTITY_PARAMETER); RecordsFlushing recordsFlushing = getRecordsFlushing(request); List<Record> records = getRandomFolders(qty, serviceCall); for (int i = 0; i < records.size(); i++) { Record record = records.get(i); setRecordMetadatas(record, schema, Octets.octets(sizeInOctets), serviceCall + i); } Transaction transaction = new Transaction(records); transaction.setRecordFlushing(recordsFlushing); transaction.setOptimisticLockingResolution(OptimisticLockingResolution.EXCEPTION); getRecordServices().execute(transaction); }
private Metadata givenReferenceToSchemaType( Metadata metadata, MetadataSchemaTypes types, String code, boolean childOf, String type) { when(metadata.getCode()).thenReturn(code); when(metadata.getLocalCode()).thenReturn(code.split("_")[2]); when(metadata.getType()).thenReturn(MetadataValueType.REFERENCE); AllowedReferences allowedReferences = new AllowedReferences(type, null); when(metadata.getAllowedReferences()).thenReturn(allowedReferences); when(types.getMetadata(code)).thenReturn(metadata); return metadata; }
private MetadataSchemaType configureMockedSchemaTypeWithTaxonomyRelations( MetadataSchemaType type, MetadataSchemaTypes types, String code, Metadata... taxonomyRelations) { when(type.getCode()).thenReturn(code); List<Metadata> metadatas = Arrays.asList(taxonomyRelations); when(type.getAllReferencesToTaxonomySchemas(taxonomies)).thenReturn(metadatas); when(types.getSchemaType(code)).thenReturn(type); return type; }
private MetadataSchema configureMockedSchemaWithTaxonomyRelations( MetadataSchema schema, MetadataSchemaTypes types, String code, Metadata... taxonomyRelations) { when(schema.getCode()).thenReturn(code); List<Metadata> metadatas = Arrays.asList(taxonomyRelations); when(schema.getTaxonomyRelationshipReferences(taxonomies)).thenReturn(metadatas); when(types.getSchema(code)).thenReturn(schema); return schema; }
void doAddContent(HttpServletRequest request, HttpServletResponse response, int serviceCall) throws ServletException, IOException { IOServices ioServices = getIOServices(); RecordsFlushing recordsFlushing = getRecordsFlushing(request); User user = getUserServices().getUserInCollection("admin", COLLECTION); List<Record> records = getRandomFolders(1, serviceCall); if (!records.isEmpty()) { ContentManager contentManager = getContentServices(); MetadataSchemaTypes types = getSchemaTypes(COLLECTION); MetadataSchema documentSchema = types.getSchema(Document.DEFAULT_SCHEMA); Document document = new Document(getRecordServices().newRecordWithSchema(documentSchema), types); int qtyOfFiles = allPdfFiles.size(); int index = setup.getRandom().nextInt(qtyOfFiles); File file = allPdfFiles.get(index); BufferedInputStream inputStream = new BufferedInputStream(ioServices.newFileInputStream(file, CONTENT_TO_ADD_STREAM)); ContentVersionDataSummary dataSummary = getContentServices().upload(inputStream); document.setTitle(file.getName()); document.setContent(contentManager.createMajor(user, file.getName(), dataSummary)); document.setFolder(records.get(0).getId()); Transaction transaction = new Transaction(asList(document.getWrappedRecord())); transaction.setRecordFlushing(recordsFlushing); transaction.setOptimisticLockingResolution(OptimisticLockingResolution.EXCEPTION); try { getRecordServices().execute(transaction); } catch (RecordServicesException e) { throw new RuntimeException(e); } IOUtils.closeQuietly(inputStream); } }
void doAddFolder(HttpServletRequest request, HttpServletResponse response, int serviceCall) throws ServletException, IOException, RecordServicesException { int addedFolder = addedFolderCounter.incrementAndGet(); int qty = getRequiredIntegerParameter(request, QUANTITY_PARAMETER); int sizeInOctets = getRequiredIntegerParameter(request, SIZE_IN_OCTETS_PARAMETER); MetadataSchemaTypes schemaTypes = getSchemaTypes(COLLECTION); MetadataSchema folderSchema = schemaTypes.getSchema("folder_default"); RecordsFlushing recordsFlushing = getRecordsFlushing(request); List<Record> records = new ArrayList<>(); for (int i = 0; i < qty; i++) { int counter = addedFolder + i; String categoryId = level1And2CategoryIds.get(counter % level1And2CategoryIds.size()); AdministrativeUnit administrativeUnit = new AdministrativeUnit( administrativeUnits.get(counter % administrativeUnits.size()), schemaTypes); Record newFolderRecord = getRecordServices().newRecordWithSchema(folderSchema); Folder newFolder = new Folder(newFolderRecord, schemaTypes); newFolder.setCategoryEntered(categoryId); newFolder.setRetentionRuleEntered(TEST_RULE_ID); newFolder.setCopyStatusEntered(CopyType.PRINCIPAL); newFolder.setOpenDate(new LocalDate(2010, 1, 1)); newFolder.setFilingSpaceEntered(administrativeUnit.getFilingSpaces().get(0)); newFolder.setAdministrativeUnitEntered(administrativeUnit); setRecordMetadatas( newFolderRecord, folderSchema, Octets.octets(sizeInOctets), addedFolder + i); records.add(newFolderRecord); } Transaction transaction = new Transaction(records); transaction.setRecordFlushing(recordsFlushing); getRecordServices().execute(transaction); }