<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<body link="#355491" alink="#4262a1" vlink="#355491" style="background: #e2e2e2; margin: 0; padding: 20px;">
<div>
        <table cellpadding="0" bgcolor="#FFFFFF" border="0" cellspacing="0" style="border: 1px solid #dadada; margin-bottom: 30px; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                <tbody>
                        <tr>
                                <td>
                                        <table border="0" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" style="border: solid 2px #ccc; background: #dadada; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                                                <tbody>
                                                        <tr>
                                                                <td bgcolor="#000000" valign="middle" height="58px" style="border-bottom: 1px solid #ccc; padding: 20px; -moz-border-radius-topleft: 3px; -moz-border-radius-topright: 3px; -webkit-border-top-right-radius: 5px; -webkit-border-top-left-radius: 5px;">
                                                                        <h1 style="color: #333333; font: bold 22px Arial, Helvetica, sans-serif; margin: 0; display: block !important;">
                                                                        <!-- To have a header image/logo replace the name below with your img tag -->
                                                                        <!-- Email clients will render the images when the message is read so any image -->
                                                                        <!-- must be made available on a public server, so that all recipients can load the image. -->
                                                                        <a href="http://community.jboss.org/index.jspa" style="text-decoration: none; color: #E1E1E1">JBoss Community</a></h1>
                                                                </td>
                                                        </tr>
                                                        <tr>
                                                                <td bgcolor="#FFFFFF" style="font: normal 12px Arial, Helvetica, sans-serif; color:#333333; padding: 20px; -moz-border-radius-bottomleft: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 5px; -webkit-border-bottom-left-radius: 5px;"><h3 style="margin: 10px 0 5px; font-size: 17px; font-weight: normal;">
Metadata processing
</h3>
<span style="margin-bottom: 10px;">
reply from <a href="http://community.jboss.org/people/jason.greene%40jboss.com">Jason Greene</a> in <i>JBoss AS7 Development</i> - <a href="http://community.jboss.org/message/560073#560073">View the full discussion</a>
</span>
<hr style="margin: 20px 0; border: none; background-color: #dadada; height: 1px;">
<div class="jive-rendered-content"><blockquote class="jive-quote"><p>Ales Justin wrote:</p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><blockquote class="jive-quote">Annotation indexing was done by Jason.</blockquote><p>Where in Modules is this?</p><p>It might be just me having trouble finding it with all this scattered git stuff ...</p></blockquote><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><div id="_mcePaste">David is referring to a component I created awhile back:</div><div id="_mcePaste"><a class="jive-link-external-small" href="http://github.com/jbossas/jandex" target="_blank">http://github.com/jbossas/jandex</a></div><div id="_mcePaste"> </div><div id="_mcePaste">It's a generic, small low level component that indexes a set of classes (typically a jar) and provides an incomplete index (only from the viewpoint of those classes). It has no dependencies, and bypasses any kind of bytecode framework (javassist, asm, etc) so that it can take certain optimizations (not processing the full class, and skipping classes that don't have annotations). It also produces a space efficient index that is designed to be read quickly. It's intended to be attractive to all java projects, so that their is a strong incentive for users to index their jars, however initially we just care about fast domain performance.</div><div> </div><div>This is only part of the puzzle though, as to have a complete picture the index lookups have to be aggregated to represent the class loader. That aggregation pattern would likely needed to be coordinated by an API that has the "complete" picture of module imports, deployments, etc (likely similar to AS6). The current Managed Bean impl uses it to index directly, however once the deployment repository is complete it can pull from index files that survive restart. The aggregation doesn't exist yet, and may or may not belong in modules. </div><div> </div></div>
<div style="background-color: #f4f4f4; padding: 10px; margin-top: 20px;">
<p style="margin: 0;">Reply to this message by <a href="http://community.jboss.org/message/560073#560073">going to Community</a></p>
        <p style="margin: 0;">Start a new discussion in JBoss AS7 Development at <a href="http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2225">Community</a></p>
</div></td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
</div>
</body>
</html>