What mean "Version" (that is for optimistic-lock) in a no mutable entity ?
2009/11/19 Mikael Henriksson <[email protected]> > Ok the following works like a fucking charm (pardon the language) except > that since I only do inserts it does not update the version automatically > and I'd rather not leave that to whoever is writing the persistence service > ;) > Any suggestions to how I can intercept and automatically increment the > version where contact_id = ? and contact_version_id = ?. Do I need to use > the event subsystem for that? Or can I solve it further in the mapping? > Note: ( ReadOnly() means "mutable=false" which prohibits deletes and > updates.) > > public class ParentMap : ClassMap<Parent> > { > public ParentMap() > { > Table("parent_def"); > Id(x => x.Id,"parent_id"); > Map(x => x.UID, "parent_uid").CustomSqlType("varchar").Length(40); > Map(x => x.DeletedAt ,"dte_deleted").Nullable(); > Map(x => x.ModifiedAt, "dte_modified").Nullable(); > Map(x => x.CreatedAt, "dte_created").Nullable(); > Map(x => x.AutoUpdate, "auto_update").CustomSqlType("bit"); > > HasMany(x => x.ParentVersions) > .KeyColumn("parent_id") > .Inverse() > .Cascade.All(); > } > } > public class ParentVersionMap : ClassMap<ParentVersion> > { > public ParentVersionMap() > { > Table("parent_version"); > *ReadOnly();* > > Id(x => x.Id ,"parent_version_id"); > Version(x => x.Version) > .Column("parent_version") > .Generated.Never(); > Map(x => x.ParentHash ,"parent_hash") > .CustomSqlType("varchar") > .Length(40); > Map(x => x.DateCreated ,"dte_created"); > Map(x => x.UpdateAvailable, "update_available"); > > References(x => x.Parent, "parent_id") > .ForeignKey("parent_id"); > } > } > > -- > You received this message because you are subscribed to the Google Groups > "nhusers" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]<nhusers%[email protected]> > . > For more options, visit this group at > http://groups.google.com/group/nhusers?hl=. > -- Fabio Maulo -- You received this message because you are subscribed to the Google Groups "nhusers" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/nhusers?hl=.
