cayenne-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
Subject [CONF] Apache Cayenne > Is Inheritance Supported
Date Sat, 26 Jun 2010 16:12:00 GMT
    <base href="">
            <link rel="stylesheet" href="/confluence/s/1810/9/25/_/styles/combined.css?spaceKey=CAY&amp;forWysiwyg=true"
<body style="background: white;" bgcolor="white" class="email-body">
<div id="pageContent">
<div id="notificationFormat">
<div class="wiki-content">
<div class="email">
    <h2><a href="">Is
Inheritance Supported</a></h2>
    <h4>Page <b>edited</b> by             <a href="">Andrus
                         <h4>Changes (2)</h4>
<div id="page-diffs">
            <table class="diff" cellpadding="0" cellspacing="0">
            <tr><td class="diff-deleted-lines" style="color:#999;background-color:#fdd;text-decoration:line-through;">
<br>Cayenne supports *single-table inheritance* (flat, table-per-class-hierarchy) natively.
<br> <br>*Vertical inheritance* (table-per-subclass) is being discussed and worked
on.   As a workaround, it&#39;s possible to simulate much of vertical inheritance using
templating and composite DataObjects.  See [CompositeVerticalInheritance] for details.  However,
there&#39;s an inability to query across all tables sharing this custom superclass.  There
may also be issues with invalidating or refetching. <br> <br>*Horizontal Inheritance*
(table-per-concrete-class) is not currently supported.  In [this message|],
<br> Randy Leonard suggested that horizontal inheritance could be simulated by creating
a subclass of CayenneDataObject which contained access to shared properties, and having data
objects inherit from this class.  Again there&#39;s an inability to query across all tables
sharing this custom superclass.  <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;">Cayenne
supports single-table and vertical inheritance mapping. <br></td></tr>
</div>                            <h4>Full Content</h4>
                    <div class="notificationGreySide">
        <p>Cayenne supports single-table and vertical inheritance mapping.</p>
        <div id="commentsSection" class="wiki-content pageSection">
        <div style="float: right;">
            <a href=""
class="grey">Change Notification Preferences</a>
        <a href="">View
        <a href="">View
        <a href=";showCommentArea=true#addcomment">Add

View raw message