Package org.hibernate.envers.configuration.metadata

Examples of org.hibernate.envers.configuration.metadata.AuditMetadataGenerator


        }

        // Now that all information is read we can update the calculated fields.
        classesAuditingData.updateCalculatedFields();

        AuditMetadataGenerator auditMetaGen = new AuditMetadataGenerator(cfg, globalCfg, verEntCfg,
                revisionInfoRelationMapping, auditEntityNameRegister);

        // First pass
        for (Map.Entry<PersistentClass, ClassAuditingData> pcDatasEntry : classesAuditingData.getAllClassAuditedData()) {
            PersistentClass pc = pcDatasEntry.getKey();
            ClassAuditingData auditData = pcDatasEntry.getValue();

            EntityXmlMappingData xmlMappingData = new EntityXmlMappingData();
            if (auditData.isAudited()) {
                if (!StringTools.isEmpty(auditData.getAuditTable().value())) {
                    verEntCfg.addCustomAuditTableName(pc.getEntityName(), auditData.getAuditTable().value());
                }

                auditMetaGen.generateFirstPass(pc, auditData, xmlMappingData, true);
      } else {
        auditMetaGen.generateFirstPass(pc, auditData, xmlMappingData, false);
      }

            xmlMappings.put(pc, xmlMappingData);
        }

        // Second pass
        for (Map.Entry<PersistentClass, ClassAuditingData> pcDatasEntry : classesAuditingData.getAllClassAuditedData()) {
            EntityXmlMappingData xmlMappingData = xmlMappings.get(pcDatasEntry.getKey());

            if (pcDatasEntry.getValue().isAudited()) {
                auditMetaGen.generateSecondPass(pcDatasEntry.getKey(), pcDatasEntry.getValue(), xmlMappingData);
                try {
                    cfg.addDocument(writer.write(xmlMappingData.getMainXmlMapping()));
                    //writeDocument(xmlMappingData.getMainXmlMapping());

                    for (Document additionalMapping : xmlMappingData.getAdditionalXmlMappings()) {
                        cfg.addDocument(writer.write(additionalMapping));
                        //writeDocument(additionalMapping);
                    }
                } catch (DocumentException e) {
                    throw new MappingException(e);
                }
            }
        }

        // Only if there are any versioned classes
        if (classesAuditingData.getAllClassAuditedData().size() > 0) {
            try {
                if (revisionInfoXmlMapping !=  null) {
                    //writeDocument(revisionInfoXmlMapping);
                    cfg.addDocument(writer.write(revisionInfoXmlMapping));
                }
            } catch (DocumentException e) {
                throw new MappingException(e);
            }
        }

    return new EntitiesConfigurations(auditMetaGen.getEntitiesConfigurations(),
        auditMetaGen.getNotAuditedEntitiesConfigurations());
    }
View Full Code Here


        }

        // Now that all information is read we can update the calculated fields.
        classesAuditingData.updateCalculatedFields();

        AuditMetadataGenerator auditMetaGen = new AuditMetadataGenerator(cfg, globalCfg, verEntCfg,
                revisionInfoRelationMapping, auditEntityNameRegister, classesAuditingData);

        // First pass
        for (Map.Entry<PersistentClass, ClassAuditingData> pcDatasEntry : classesAuditingData.getAllClassAuditedData()) {
            PersistentClass pc = pcDatasEntry.getKey();
            ClassAuditingData auditData = pcDatasEntry.getValue();

            EntityXmlMappingData xmlMappingData = new EntityXmlMappingData();
            if (auditData.isAudited()) {
                if (!StringTools.isEmpty(auditData.getAuditTable().value())) {
                    verEntCfg.addCustomAuditTableName(pc.getEntityName(), auditData.getAuditTable().value());
                }

                auditMetaGen.generateFirstPass(pc, auditData, xmlMappingData, true);
      } else {
        auditMetaGen.generateFirstPass(pc, auditData, xmlMappingData, false);
      }

            xmlMappings.put(pc, xmlMappingData);
        }

        // Second pass
        for (Map.Entry<PersistentClass, ClassAuditingData> pcDatasEntry : classesAuditingData.getAllClassAuditedData()) {
            EntityXmlMappingData xmlMappingData = xmlMappings.get(pcDatasEntry.getKey());

            if (pcDatasEntry.getValue().isAudited()) {
                auditMetaGen.generateSecondPass(pcDatasEntry.getKey(), pcDatasEntry.getValue(), xmlMappingData);
                try {
                    cfg.addDocument(writer.write(xmlMappingData.getMainXmlMapping()));
                    //writeDocument(xmlMappingData.getMainXmlMapping());

                    for (Document additionalMapping : xmlMappingData.getAdditionalXmlMappings()) {
                        cfg.addDocument(writer.write(additionalMapping));
                        //writeDocument(additionalMapping);
                    }
                } catch (DocumentException e) {
                    throw new MappingException(e);
                }
            }
        }

        // Only if there are any versioned classes
        if (classesAuditingData.getAllClassAuditedData().size() > 0) {
            try {
                if (revisionInfoXmlMapping !=  null) {
                    //writeDocument(revisionInfoXmlMapping);
                    cfg.addDocument(writer.write(revisionInfoXmlMapping));
                }
            } catch (DocumentException e) {
                throw new MappingException(e);
            }
        }

    return new EntitiesConfigurations(auditMetaGen.getEntitiesConfigurations(),
        auditMetaGen.getNotAuditedEntitiesConfigurations());
    }
View Full Code Here

        }

        // Now that all information is read we can update the calculated fields.
        classesAuditingData.updateCalculatedFields();

        AuditMetadataGenerator auditMetaGen = new AuditMetadataGenerator(cfg, globalCfg, verEntCfg, auditStrategy,
                revisionInfoRelationMapping, auditEntityNameRegister);

        // First pass
        for (Map.Entry<PersistentClass, ClassAuditingData> pcDatasEntry : classesAuditingData.getAllClassAuditedData()) {
            PersistentClass pc = pcDatasEntry.getKey();
            ClassAuditingData auditData = pcDatasEntry.getValue();

            EntityXmlMappingData xmlMappingData = new EntityXmlMappingData();
            if (auditData.isAudited()) {
                if (!StringTools.isEmpty(auditData.getAuditTable().value())) {
                    verEntCfg.addCustomAuditTableName(pc.getEntityName(), auditData.getAuditTable().value());
                }

                auditMetaGen.generateFirstPass(pc, auditData, xmlMappingData, true);
      } else {
        auditMetaGen.generateFirstPass(pc, auditData, xmlMappingData, false);
      }

            xmlMappings.put(pc, xmlMappingData);
        }

        // Second pass
        for (Map.Entry<PersistentClass, ClassAuditingData> pcDatasEntry : classesAuditingData.getAllClassAuditedData()) {
            EntityXmlMappingData xmlMappingData = xmlMappings.get(pcDatasEntry.getKey());

            if (pcDatasEntry.getValue().isAudited()) {
                auditMetaGen.generateSecondPass(pcDatasEntry.getKey(), pcDatasEntry.getValue(), xmlMappingData);
                try {
                    cfg.addDocument(writer.write(xmlMappingData.getMainXmlMapping()));
                    //writeDocument(xmlMappingData.getMainXmlMapping());

                    for (Document additionalMapping : xmlMappingData.getAdditionalXmlMappings()) {
                        cfg.addDocument(writer.write(additionalMapping));
                        //writeDocument(additionalMapping);
                    }
                } catch (DocumentException e) {
                    throw new MappingException(e);
                }
            }
        }

        // Only if there are any versioned classes
        if (auditMetaGen.getEntitiesConfigurations().size() > 0) {
            try {
                if (revisionInfoXmlMapping !=  null) {
                    //writeDocument(revisionInfoXmlMapping);
                    cfg.addDocument(writer.write(revisionInfoXmlMapping));
                }
            } catch (DocumentException e) {
                throw new MappingException(e);
            }
        }

    return new EntitiesConfigurations(auditMetaGen.getEntitiesConfigurations(),
        auditMetaGen.getNotAuditedEntitiesConfigurations());
    }
View Full Code Here

        }

        // Now that all information is read we can update the calculated fields.
        classesAuditingData.updateCalculatedFields();

        AuditMetadataGenerator auditMetaGen = new AuditMetadataGenerator(cfg, globalCfg, verEntCfg, auditStrategy,
                revisionInfoRelationMapping, auditEntityNameRegister);

        // First pass
        for (Map.Entry<PersistentClass, ClassAuditingData> pcDatasEntry : classesAuditingData.getAllClassAuditedData()) {
            PersistentClass pc = pcDatasEntry.getKey();
            ClassAuditingData auditData = pcDatasEntry.getValue();

            EntityXmlMappingData xmlMappingData = new EntityXmlMappingData();
            if (auditData.isAudited()) {
                if (!StringTools.isEmpty(auditData.getAuditTable().value())) {
                    verEntCfg.addCustomAuditTableName(pc.getEntityName(), auditData.getAuditTable().value());
                }

                auditMetaGen.generateFirstPass(pc, auditData, xmlMappingData, true);
      } else {
        auditMetaGen.generateFirstPass(pc, auditData, xmlMappingData, false);
      }

            xmlMappings.put(pc, xmlMappingData);
        }

        // Second pass
        for (Map.Entry<PersistentClass, ClassAuditingData> pcDatasEntry : classesAuditingData.getAllClassAuditedData()) {
            EntityXmlMappingData xmlMappingData = xmlMappings.get(pcDatasEntry.getKey());

            if (pcDatasEntry.getValue().isAudited()) {
                auditMetaGen.generateSecondPass(pcDatasEntry.getKey(), pcDatasEntry.getValue(), xmlMappingData);
                try {
                    cfg.addDocument(writer.write(xmlMappingData.getMainXmlMapping()));
                    //writeDocument(xmlMappingData.getMainXmlMapping());

                    for (Document additionalMapping : xmlMappingData.getAdditionalXmlMappings()) {
                        cfg.addDocument(writer.write(additionalMapping));
                        //writeDocument(additionalMapping);
                    }
                } catch (DocumentException e) {
                    throw new MappingException(e);
                }
            }
        }

        // Only if there are any versioned classes
        if (classesAuditingData.getAllClassAuditedData().size() > 0) {
            try {
                if (revisionInfoXmlMapping !=  null) {
                    //writeDocument(revisionInfoXmlMapping);
                    cfg.addDocument(writer.write(revisionInfoXmlMapping));
                }
            } catch (DocumentException e) {
                throw new MappingException(e);
            }
        }

    return new EntitiesConfigurations(auditMetaGen.getEntitiesConfigurations(),
        auditMetaGen.getNotAuditedEntitiesConfigurations());
    }
View Full Code Here

        }

        // Now that all information is read we can update the calculated fields.
        classesAuditingData.updateCalculatedFields();

        AuditMetadataGenerator auditMetaGen = new AuditMetadataGenerator(cfg, globalCfg, verEntCfg, auditStrategy,
                revisionInfoRelationMapping, auditEntityNameRegister);

        // First pass
        for (Map.Entry<PersistentClass, ClassAuditingData> pcDatasEntry : classesAuditingData.getAllClassAuditedData()) {
            PersistentClass pc = pcDatasEntry.getKey();
            ClassAuditingData auditData = pcDatasEntry.getValue();

            EntityXmlMappingData xmlMappingData = new EntityXmlMappingData();
            if (auditData.isAudited()) {
                if (!StringTools.isEmpty(auditData.getAuditTable().value())) {
                    verEntCfg.addCustomAuditTableName(pc.getEntityName(), auditData.getAuditTable().value());
                }

                auditMetaGen.generateFirstPass(pc, auditData, xmlMappingData, true);
      } else {
        auditMetaGen.generateFirstPass(pc, auditData, xmlMappingData, false);
      }

            xmlMappings.put(pc, xmlMappingData);
        }

        // Second pass
        for (Map.Entry<PersistentClass, ClassAuditingData> pcDatasEntry : classesAuditingData.getAllClassAuditedData()) {
            EntityXmlMappingData xmlMappingData = xmlMappings.get(pcDatasEntry.getKey());

            if (pcDatasEntry.getValue().isAudited()) {
                auditMetaGen.generateSecondPass(pcDatasEntry.getKey(), pcDatasEntry.getValue(), xmlMappingData);
                try {
                    cfg.addDocument(writer.write(xmlMappingData.getMainXmlMapping()));
                    //writeDocument(xmlMappingData.getMainXmlMapping());

                    for (Document additionalMapping : xmlMappingData.getAdditionalXmlMappings()) {
                        cfg.addDocument(writer.write(additionalMapping));
                        //writeDocument(additionalMapping);
                    }
                } catch (DocumentException e) {
                    throw new MappingException(e);
                }
            }
        }

        // Only if there are any versioned classes
        if (classesAuditingData.getAllClassAuditedData().size() > 0) {
            try {
                if (revisionInfoXmlMapping !=  null) {
                    //writeDocument(revisionInfoXmlMapping);
                    cfg.addDocument(writer.write(revisionInfoXmlMapping));
                }
            } catch (DocumentException e) {
                throw new MappingException(e);
            }
        }

    return new EntitiesConfigurations(auditMetaGen.getEntitiesConfigurations(),
        auditMetaGen.getNotAuditedEntitiesConfigurations());
    }
View Full Code Here

        }

        // Now that all information is read we can update the calculated fields.
        classesAuditingData.updateCalculatedFields();

        AuditMetadataGenerator auditMetaGen = new AuditMetadataGenerator(cfg, globalCfg, verEntCfg, auditStrategy,
                revisionInfoRelationMapping, auditEntityNameRegister);

        // First pass
        for (Map.Entry<PersistentClass, ClassAuditingData> pcDatasEntry : classesAuditingData.getAllClassAuditedData()) {
            PersistentClass pc = pcDatasEntry.getKey();
            ClassAuditingData auditData = pcDatasEntry.getValue();

            EntityXmlMappingData xmlMappingData = new EntityXmlMappingData();
            if (auditData.isAudited()) {
                if (!StringTools.isEmpty(auditData.getAuditTable().value())) {
                    verEntCfg.addCustomAuditTableName(pc.getEntityName(), auditData.getAuditTable().value());
                }

                auditMetaGen.generateFirstPass(pc, auditData, xmlMappingData, true);
      } else {
        auditMetaGen.generateFirstPass(pc, auditData, xmlMappingData, false);
      }

            xmlMappings.put(pc, xmlMappingData);
        }

        // Second pass
        for (Map.Entry<PersistentClass, ClassAuditingData> pcDatasEntry : classesAuditingData.getAllClassAuditedData()) {
            EntityXmlMappingData xmlMappingData = xmlMappings.get(pcDatasEntry.getKey());

            if (pcDatasEntry.getValue().isAudited()) {
                auditMetaGen.generateSecondPass(pcDatasEntry.getKey(), pcDatasEntry.getValue(), xmlMappingData);
                try {
                    cfg.addDocument(writer.write(xmlMappingData.getMainXmlMapping()));
                    //writeDocument(xmlMappingData.getMainXmlMapping());

                    for (Document additionalMapping : xmlMappingData.getAdditionalXmlMappings()) {
                        cfg.addDocument(writer.write(additionalMapping));
                        //writeDocument(additionalMapping);
                    }
                } catch (DocumentException e) {
                    throw new MappingException(e);
                }
            }
        }

        // Only if there are any versioned classes
        if (classesAuditingData.getAllClassAuditedData().size() > 0) {
            try {
                if (revisionInfoXmlMapping !=  null) {
                    //writeDocument(revisionInfoXmlMapping);
                    cfg.addDocument(writer.write(revisionInfoXmlMapping));
                }
            } catch (DocumentException e) {
                throw new MappingException(e);
            }
        }

    return new EntitiesConfigurations(auditMetaGen.getEntitiesConfigurations(),
        auditMetaGen.getNotAuditedEntitiesConfigurations());
    }
View Full Code Here

        }

        // Now that all information is read we can update the calculated fields.
        classesAuditingData.updateCalculatedFields();

        AuditMetadataGenerator auditMetaGen = new AuditMetadataGenerator(cfg, globalCfg, verEntCfg, auditStrategy,
                revisionInfoRelationMapping, auditEntityNameRegister);

        // First pass
        for (Map.Entry<PersistentClass, ClassAuditingData> pcDatasEntry : classesAuditingData.getAllClassAuditedData()) {
            PersistentClass pc = pcDatasEntry.getKey();
            ClassAuditingData auditData = pcDatasEntry.getValue();

            EntityXmlMappingData xmlMappingData = new EntityXmlMappingData();
            if (auditData.isAudited()) {
                if (!StringTools.isEmpty(auditData.getAuditTable().value())) {
                    verEntCfg.addCustomAuditTableName(pc.getEntityName(), auditData.getAuditTable().value());
                }

                auditMetaGen.generateFirstPass(pc, auditData, xmlMappingData, true);
      } else {
        auditMetaGen.generateFirstPass(pc, auditData, xmlMappingData, false);
      }

            xmlMappings.put(pc, xmlMappingData);
        }

        // Second pass
        for (Map.Entry<PersistentClass, ClassAuditingData> pcDatasEntry : classesAuditingData.getAllClassAuditedData()) {
            EntityXmlMappingData xmlMappingData = xmlMappings.get(pcDatasEntry.getKey());

            if (pcDatasEntry.getValue().isAudited()) {
                auditMetaGen.generateSecondPass(pcDatasEntry.getKey(), pcDatasEntry.getValue(), xmlMappingData);
                try {
                    cfg.addDocument(writer.write(xmlMappingData.getMainXmlMapping()));
                    //writeDocument(xmlMappingData.getMainXmlMapping());

                    for (Document additionalMapping : xmlMappingData.getAdditionalXmlMappings()) {
                        cfg.addDocument(writer.write(additionalMapping));
                        //writeDocument(additionalMapping);
                    }
                } catch (DocumentException e) {
                    throw new MappingException(e);
                }
            }
        }

        // Only if there are any versioned classes
        if (auditMetaGen.getEntitiesConfigurations().size() > 0) {
            try {
                if (revisionInfoXmlMapping !=  null) {
                    //writeDocument(revisionInfoXmlMapping);
                    cfg.addDocument(writer.write(revisionInfoXmlMapping));
                }
            } catch (DocumentException e) {
                throw new MappingException(e);
            }
        }

    return new EntitiesConfigurations(auditMetaGen.getEntitiesConfigurations(),
        auditMetaGen.getNotAuditedEntitiesConfigurations());
    }
View Full Code Here

*/
public class EntitiesConfigurator {
    public EntitiesConfigurations configure(Configuration cfg, ReflectionManager reflectionManager,
                                            GlobalConfiguration globalCfg, AuditEntitiesConfiguration verEntCfg,
                                            Document revisionInfoXmlMapping, Element revisionInfoRelationMapping) {
        AuditMetadataGenerator auditMetaGen = new AuditMetadataGenerator(cfg, globalCfg, verEntCfg,
                revisionInfoRelationMapping);
        DOMWriter writer = new DOMWriter();

        // Sorting the persistent class topologically - superclass always before subclass
        Iterator<PersistentClass> classes = GraphTopologicalSort.sort(new PersistentClassGraphDefiner(cfg)).iterator();

        Map<PersistentClass, ClassAuditingData> pcDatas =
                new HashMap<PersistentClass, ClassAuditingData>();
        Map<PersistentClass, EntityXmlMappingData> xmlMappings = new HashMap<PersistentClass, EntityXmlMappingData>();

        // First pass
        while (classes.hasNext()) {
            PersistentClass pc = classes.next();
            // Collecting information from annotations on the persistent class pc
            AnnotationsMetadataReader annotationsMetadataReader =
                    new AnnotationsMetadataReader(globalCfg, reflectionManager, pc);
            ClassAuditingData auditData = annotationsMetadataReader.getAuditData();

            if (auditData.isAudited()) {
                pcDatas.put(pc, auditData);

                if (!StringTools.isEmpty(auditData.getAuditTable().value())) {
                    verEntCfg.addCustomAuditTableName(pc.getEntityName(), auditData.getAuditTable().value());
                }

                EntityXmlMappingData xmlMappingData = new EntityXmlMappingData();
                auditMetaGen.generateFirstPass(pc, auditData, xmlMappingData, true);
                xmlMappings.put(pc, xmlMappingData);
      } else {
        EntityXmlMappingData xmlMappingData = new EntityXmlMappingData();
        auditMetaGen.generateFirstPass(pc, auditData, xmlMappingData, false);
        xmlMappings.put(pc, xmlMappingData);
      }
        }

        // Second pass
        for (Map.Entry<PersistentClass, ClassAuditingData> pcDatasEntry : pcDatas.entrySet()) {
            EntityXmlMappingData xmlMappingData = xmlMappings.get(pcDatasEntry.getKey());

            auditMetaGen.generateSecondPass(pcDatasEntry.getKey(), pcDatasEntry.getValue(), xmlMappingData);

            try {
                cfg.addDocument(writer.write(xmlMappingData.getMainXmlMapping()));
                // TODO
                //writeDocument(xmlMappingData.getMainXmlMapping());

                for (Document additionalMapping : xmlMappingData.getAdditionalXmlMappings()) {
                    cfg.addDocument(writer.write(additionalMapping));
                    // TODO
                    //writeDocument(additionalMapping);
                }
            } catch (DocumentException e) {
                throw new MappingException(e);
            }
        }

        // Only if there are any versioned classes
        if (pcDatas.size() > 0) {
            try {
                if (revisionInfoXmlMapping !=  null) {
                    // TODO
                    //writeDocument(revisionInfoXmlMapping);
                    cfg.addDocument(writer.write(revisionInfoXmlMapping));
                }
            } catch (DocumentException e) {
                throw new MappingException(e);
            }
        }

    return new EntitiesConfigurations(auditMetaGen.getEntitiesConfigurations(),
        auditMetaGen.getNotAuditedEntitiesConfigurations());
    }
View Full Code Here

TOP

Related Classes of org.hibernate.envers.configuration.metadata.AuditMetadataGenerator

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.