String getMimeTypeOrGuessIt(DocumentValue documentValue) { final String mimeType = documentValue.getMimeType(); final byte[] content = documentValue.getContent(); final String fileName = documentValue.getFileName(); if (mimeType != null && !mimeType.isEmpty() || content == null || fileName == null || fileName.isEmpty()) { return mimeType; } try { final File tempFile = File.createTempFile("tmp", fileName); IOUtil.write(tempFile, content); final String s = Files.probeContentType(tempFile.toPath()); tempFile.delete(); return s; } catch (Throwable e) { return mimeType; } }
String getMimeTypeOrGuessIt(DocumentValue documentValue) { final String mimeType = documentValue.getMimeType(); final byte[] content = documentValue.getContent(); final String fileName = documentValue.getFileName(); if (mimeType != null && !mimeType.isEmpty() || content == null || fileName == null || fileName.isEmpty()) { return mimeType; } try { final File tempFile = File.createTempFile("tmp", fileName); IOUtil.write(tempFile, content); final String s = Files.probeContentType(tempFile.toPath()); tempFile.delete(); return s; } catch (Throwable e) { return mimeType; } }
private SDocument buildSDocument(final DocumentValue documentValue) { if (documentValue.hasContent()) { return buildProcessDocument(documentValue.getFileName(), documentValue.getMimeType(), getUserId(), documentValue.getContent()); } return buildExternalProcessDocumentReference(documentValue.getFileName(), documentValue.getMimeType(), getUserId(), documentValue.getUrl()); }
private SDocument buildSDocument(final DocumentValue documentValue) { if (documentValue.hasContent()) { return buildProcessDocument(documentValue.getFileName(), documentValue.getMimeType(), getUserId(), documentValue.getContent()); } return buildExternalProcessDocumentReference(documentValue.getFileName(), documentValue.getMimeType(), getUserId(), documentValue.getUrl()); }
/** * Test method for {@link org.bonitasoft.engine.bpm.document.DocumentValue#setFileName(java.lang.String)}. */ @Test public final void setFileName_should_set_content_with_filename_and_content() { // Given final DocumentValue documentValue = new DocumentValue("yujyt".getBytes(), "mimeType", "filename"); final String fileName = "new"; // When documentValue.setFileName(fileName); // Then assertEquals(fileName, documentValue.getFileName()); }
public SDocument createDocumentObject(final DocumentValue documentValue, final long authorId) { final SDocumentBuilder processDocumentBuilder = BuilderFactory.get(SDocumentBuilderFactory.class).createNewInstance(documentValue.getFileName(), getMimeTypeOrGuessIt(documentValue), authorId); processDocumentBuilder.setHasContent(documentValue.hasContent()); processDocumentBuilder.setURL(documentValue.getUrl()); processDocumentBuilder.setContent(documentValue.getContent()); return processDocumentBuilder.done(); }
public SDocument createDocumentObject(final DocumentValue documentValue, final long authorId) { final SDocumentBuilder processDocumentBuilder = BuilderFactory.get(SDocumentBuilderFactory.class).createNewInstance(documentValue.getFileName(), getMimeTypeOrGuessIt(documentValue), authorId); processDocumentBuilder.setHasContent(documentValue.hasContent()); processDocumentBuilder.setURL(documentValue.getUrl()); processDocumentBuilder.setContent(documentValue.getContent()); return processDocumentBuilder.done(); }