private void manageAttachments(KpeopleAction action, DataHandler stream) throws IOException { InputStream is = null; String hashcode = null; try { is = stream.getInputStream(); hashcode = Hashcode.getHashcode(is, Hashcode.SHA512); } catch (IOException e) { e.printStackTrace(); throw e; } catch (NoSuchAlgorithmException e) { e.printStackTrace(); } String path = (String) currentProperties.get(KpeopleLabel.getEventXMLPath()); try { path = ActionDataProcessorUtil.checkEventXMLPath(path); } catch (Exception e1) { e1.printStackTrace(); } FileOutputStream outputStream = null; File tmpFilePath = null; try { path = path + action.getIdAction() + "-" + fileName; tmpFilePath = new File(path); outputStream = new FileOutputStream(tmpFilePath); stream.writeTo(outputStream); outputStream.close(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } // ActionDataProcessorUtil.deleteEventFile(tmpFilePath); String idAttachmentId = Long.toString(action.getIdAction()) + "-" + hashcode.substring(0, 6); KpeopleAttachment attachment = new KpeopleAttachment(); attachment.setAttachmentName(fileName); attachment.setAttachmentHashcode(hashcode); attachment.setAttachmentData(path); attachment.setIdAttachment(idAttachmentId); attachment.setAttachmentType(eventResult.getContentType()); eventResult.addAttachment(attachment); }
private void manageActionInfo(KpeopleAction action) { String idEvent = action.getSystemId() + action.getIdAction().toString() + action.getTimestamp(); String actionType = action.getActionType(); String systemType = null; try { systemType = ActionDataProcessorUtil.getSystemType(action.getSystemId()); } catch (Exception e) { e.printStackTrace(); } String systemId = action.getSystemId(); String actionReference = action.getActionReference(); long idAction = action.getIdAction(); eventResult = new SharepointDocumentEvent( idEvent, actionType, systemType, idAction, systemId, actionReference); }
private void manageEventInfo(GetItemResponse response, String operation) { FieldInformationCollection fields = response.getFields(); FieldInformation[] fieldsInformation = fields.getFieldInformation(); String createdBy = null; String modifiedBy = null; String created = null; String modified = null; String contentType = null; String eventCreationDate = null; String eventAuthor = null; HashMap<String, String> hm = new HashMap<String, String>(); for (int i = 0; i < fieldsInformation.length; i++) { FieldInformation field = fieldsInformation[i]; String name = field.getInternalName(); if (name.equalsIgnoreCase("BaseName")) { fileName = field.getValue(); eventResult.setTitle(fileName); } if (name.equalsIgnoreCase("Created_x0020_By")) { createdBy = field.getValue(); } if (name.equalsIgnoreCase("Modified_x0020_By")) { modifiedBy = field.getValue(); } if (name.equalsIgnoreCase("Created_x0020_Date")) { created = field.getValue(); } if (name.equalsIgnoreCase("Last_x0020_Modified")) { modified = field.getValue(); } if (name.equalsIgnoreCase("File_x0020_Type")) { contentType = field.getValue(); } if (name.equalsIgnoreCase("Process")) { String processValue[] = field.getValue().split("-"); hm.put("kpeopletag", processValue[0]); } } if (operation.equalsIgnoreCase("modified")) { eventCreationDate = modified; eventAuthor = modifiedBy; } if (operation.equalsIgnoreCase("created")) { eventCreationDate = created; eventAuthor = createdBy; } eventResult.setContentType(contentType); eventResult.setCreationDate(ActionDataProcessorUtil.getDateString(eventCreationDate)); Author author = new Author(); author.setUsername(eventAuthor); eventResult.setAuthor(author); eventResult.setProperties(hm); // eventResult.setAuthor(eventAuthor); }