--
You received this message because you are subscribed to the Google Groups "NHibernate Contrib - Development Group" group.
To post to this group, send email to nhc...@googlegroups.com.
To unsubscribe from this group, send email to nhcdevs+u...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/nhcdevs?hl=en.
Well, firs about me: I'm a software engineer, 33, I live in Bucharest,
Romania and I work for a software company where I am employed as a
Project Manager but I also do a lot of technical stuff especially in
the initiation phase of projects.
The project I'm currently starting at work will be developed in .NET
with NHibernate and some of the required features would be best served
by a bi-temporal data versioning library that exists for Hibernate in
Java and as you know it's called Envers. So we decided that the best
approach would be to port Envers to NHibernate.
As for the roadmap, will start by porting in the next two months the
CUD part (AuditEventListener class and its dependencies) that is
needed in the first phase of the project.
In the second phase that starts in August 2010 will also port the
query and the reader part.
Tuna, can you please tell us about your work on NH Envers?
Simon.
--
You received this message because you are subscribed to the Google Groups "NHibernate Contrib - Development Group" group.
To post to this group, send email to nhc...@googlegroups.com.
To unsubscribe from this group, send email to nhcdevs+u...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/nhcdevs?hl=en.
Wave would be interesting!
In the meanwhile, I started porting the AuditEventListener and
depending classes and I have questions:
1. I found in AuditSync a call to
org.hibernate.engine.SessionFactoryImplementor.openTemporarySession()
that I don't find in the ISessionFactoryImplementor on NHibernate.
While writing this question :), looking in the code, I figured out
it's equivalent to OpenSession(null, false,false,
ConnectionReleaseMode.AfterStatement); Is this correct?
2. There are refferences to java annotations as @Entity, @Version,
@MapKey. How should these be treated?
Simon.
I got over point 1., 2 is still actual and now I got stuck in the
following problem: The xml mapping document for Envers needs some
added attributes for the tag key-property (insert and update, both
bool) and for key-many-to-one (type), but the schema validation fails
because of these added properties in
NHibernate.Cfg.XmlHbmBinding.Binder.Deserialize[T](XmlNode node)
This is the mapping:
<hibernate-mapping assembly="Envers.NET" xmlns="urn:nhibernate-
mapping-2.2" auto-import="false">
<class entity-name="Envers.Net.Model.Address_AUD"
table="Address_AUD">
<composite-id name="originalId">
<key-property name="id" insert="true" update="false"
type="SimpleValue">
<column name="id" length="255" scale="2" precision="19" />
</key-property>
<key-many-to-one type="integer"
class="NHibernate.Envers.DefaultRevisionEntity" name="REV">
<column name="REV" />
</key-many-to-one>
</composite-id>
<property name="REVTYPE" insert="true" update="false"
type="NHibernate.Envers.Entities.RevisionTypeType" />
</class>
</hibernate-mapping>
The first option seems to add the attributes to tne hibernate-
mapping.xsd schema. What do you think?
--
--
You received this message because you are subscribed to the Google Groups "NHibernate Contrib - Development Group" group.
To post to this group, send email to nhc...@googlegroups.com.
To unsubscribe from this group, send email to nhcdevs+u...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/nhcdevs?hl=en.
Ayende, the code is not yet posted as till two days ago would not even compile :).
My plan was to post it either when the smoke tests pass (that is being able to create the session factory and persist an audited entity) either when someone requests it - whichever comes first - so second condition is met and I will post it on NHContrib SVN later on today.
--
You received this message because you are subscribed to the Google Groups "NHibernate Contrib - Development Group" group.
To post to this group, send email to nhc...@googlegroups.com.
To unsubscribe from this group, send email to nhcdevs+u...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/nhcdevs?hl=en.
Ayende, the code is not yet posted as till two days ago would not even compile :).
My plan was to post it either when the smoke tests pass (that is being able to create the session factory and persist an audited entity) either when someone requests it - whichever comes first - so second condition is met and I will post it on NHContrib SVN later on today.
--
You received this message because you are subscribed to the Google Groups "NHibernate Contrib - Development Group" group.
To post to this group, send email to nhc...@googlegroups.com.
To unsubscribe from this group, send email to nhcdevs+u...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/nhcdevs?hl=en.
Simon.
For an audited entity say Address, Envers creates an associated table
Address_AUD to store the revisions. The table is mapped using
Hibernate even
if there is no real class Address_AUD to map to. My port throws an
error due
to two differences I found, for my mapping that i posted before:
1. ClassCompositeIdBinder.BindComponent sets IsEmbeded = true while in
Java
the equivalent HbmBinder.bindComponent calls setDynamic(true)
2. Later on, in ClassCompositeIdBinder.BindComponent, when it calls
CreateProperty it tries to pass compositeId.ComponentClass and the
getter
throws a MappingException because componentClass is null and the
Component
is not Dynamic.
For now the solution I see is to modify myself the NHibernate code,
test and send you
the patch. Do you have any other sugestion? Any help greatly
appreciated!
--
You received this message because you are subscribed to the Google Groups "NHibernate Contrib - Development Group" group.
To post to this group, send email to nhc...@googlegroups.com.
To unsubscribe from this group, send email to nhcdevs+u...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/nhcdevs?hl=en.
--