/** * @param documentDefinition */ public SDocumentDefinitionImpl(final DocumentDefinition documentDefinition) { super(documentDefinition.getName()); url = documentDefinition.getUrl(); file = documentDefinition.getFile(); description = documentDefinition.getDescription(); mimeType = documentDefinition.getContentMimeType(); fileName = documentDefinition.getFileName(); initialValue = ServerModelConvertor.convertExpression(documentDefinition.getInitialValue()); }
private void validateDocuments(final FlowElementContainerDefinition processContainer) { for (final DocumentDefinition document : processContainer.getDocumentDefinitions()) { if (document.getUrl() != null && document.getUrl().length() > MAX_CHARACTER_URL) { designErrors.add("An url can't have more than " + MAX_CHARACTER_URL + " characters."); } if (document.getFileName() != null && document.getFileName().length() > MAX_CHARACTER_FILENAME) { designErrors.add("A file name can't have more than " + MAX_CHARACTER_FILENAME + " characters."); } } }
@Override public void find(DocumentDefinition documentDefinition, long expressionDefinitionId) { findExpressionFromNotNullContainer(documentDefinition.getInitialValue(), expressionDefinitionId); }
/** * @return * The BusinessArchive * @throws InvalidBusinessArchiveFormatException * when the business archive is inconsistent in the current state */ public BusinessArchive done() throws InvalidBusinessArchiveFormatException { if (entity.getProcessDefinition() == null) { throw new InvalidBusinessArchiveFormatException("missing process definition"); } final ArrayList<String> errors = new ArrayList<>(); for (final DocumentDefinition document : entity.getProcessDefinition().getProcessContainer().getDocumentDefinitions()) { if (document.getFile() != null && !document.getFile().isEmpty()) { final byte[] resources = entity.getResource("documents/" + document.getFile()); if (resources == null) { errors.add("missing document in the business archive that is present in the process definition " + document.getFile()); } } } if (!errors.isEmpty()) { throw new InvalidBusinessArchiveFormatException(errors); } return entity; }
private void validateDocuments(final FlowElementContainerDefinition processContainer) { for (final DocumentDefinition document : processContainer.getDocumentDefinitions()) { if (document.getUrl() != null && document.getUrl().length() > MAX_CHARACTER_URL) { designErrors.add("An url can't have more than " + MAX_CHARACTER_URL + " characters."); } if (document.getFileName() != null && document.getFileName().length() > MAX_CHARACTER_FILENAME) { designErrors.add("A file name can't have more than " + MAX_CHARACTER_FILENAME + " characters."); } } }
@Override public void find(DocumentDefinition documentDefinition, long expressionDefinitionId) { findExpressionFromNotNullContainer(documentDefinition.getInitialValue(), expressionDefinitionId); }
/** * @return * The BusinessArchive * @throws InvalidBusinessArchiveFormatException * when the business archive is inconsistent in the current state */ public BusinessArchive done() throws InvalidBusinessArchiveFormatException { if (entity.getProcessDefinition() == null) { throw new InvalidBusinessArchiveFormatException("missing process definition"); } final ArrayList<String> errors = new ArrayList<>(); for (final DocumentDefinition document : entity.getProcessDefinition().getProcessContainer().getDocumentDefinitions()) { if (document.getFile() != null && !document.getFile().isEmpty()) { final byte[] resources = entity.getResource("documents/" + document.getFile()); if (resources == null) { errors.add("missing document in the business archive that is present in the process definition " + document.getFile()); } } } if (!errors.isEmpty()) { throw new InvalidBusinessArchiveFormatException(errors); } return entity; }
/** * @param documentDefinition */ public SDocumentDefinitionImpl(final DocumentDefinition documentDefinition) { super(documentDefinition.getName()); url = documentDefinition.getUrl(); file = documentDefinition.getFile(); description = documentDefinition.getDescription(); mimeType = documentDefinition.getContentMimeType(); fileName = documentDefinition.getFileName(); initialValue = ServerModelConvertor.convertExpression(documentDefinition.getInitialValue()); }
final List<DocumentDefinition> documentDefinitions = result.getFlowElementContainer().getDocumentDefinitions(); final DocumentDefinition testDoc1 = documentDefinitions.get(0); assertEquals("testDoc", testDoc1.getName()); assertEquals("desc", testDoc1.getDescription()); assertEquals("testFile.txt", testDoc1.getFile()); assertEquals("text/plain", testDoc1.getContentMimeType()); assertEquals("plop", testDoc1.getInitialValue().getContent()); final DocumentDefinition testDoc2 = documentDefinitions.get(1); assertEquals("testDocUrl", testDoc2.getName()); assertEquals("desc", testDoc2.getDescription()); assertEquals("http://test.com/testFile.txt", testDoc2.getUrl()); assertEquals("application/octet-stream", testDoc2.getContentMimeType()); assertEquals(process.getName(), result.getName()); assertEquals(process.getVersion(), result.getVersion());