/** * factory per l'oggetto Document. * * @param rs resultset * @return istanza dell'oggetto Document * @throws SQLException label colonne non valido */ public static Document createDocument(final ResultSet rs) throws SQLException { Document document = new Document(); document.setAuthor(rs.getString("AUTHOR")); document.setTemplate(rs.getBoolean("IS_TEMPLATE")); document.setDocumentType(rs.getBoolean("ID_DOCUMENT_TYPE")); document.setIdAttachment(rs.getInt("ID_ATTACHMENT")); document.setGuid(rs.getString("GUID")); document.setHashcode(rs.getString("HASHCODE")); return document; }
/** * aggiunge oggetti di tipo Document all'event. Nel caso di Communication associo anche la email * ai documenti. * * @param event oggetto a cui associare i Document * @param email email da salvare * @param cas cas da elaborare */ private void addDocuments(final Event event, final Email email, final JCas cas) { AnnotationIndex<Annotation> aaIdx = cas.getAnnotationIndex(AttachmentAnnotation.type); FSIterator<Annotation> itAa = aaIdx.iterator(); while (itAa.hasNext()) { AttachmentAnnotation aa = (AttachmentAnnotation) itAa.next(); Document document = new Document(); document.setAttachmentType(new AttachmentType(2)); document.setGuid(aa.getUrlAttachment()); document.setHashcode(aa.getHashcode()); document.setAuthor(aa.getAuthor()); document.setTemplate(false); document.setHpmAttachmentId(aa.getId()); document.setName(aa.getAttachmentName()); event.getAttachments().add(document); // associo il documento alla mail (per il legame EMAIL-DOCUMENT) if (email != null) { email.getDocuments().add(document); } } }