archiva-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Joakim Erdfelt <joak...@apache.org>
Subject Beginnings of "Hacking Archiva" document.
Date Mon, 21 May 2007 01:50:19 GMT
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body bgcolor="#ffffff" text="#000000">
I just committed an initial xdoc for the "Hacking Archiva" set of
documents.<br>
<br>
Static Copy: <a
 href="http://joakim.erdfelt.com/maven/archiva-1.0/hacking/index.html">http://joakim.erdfelt.com/maven/archiva-1.0/hacking/index.html</a><br>
<br>
Once I got past the 'Getting Started' section, I outlined a collection
of Concepts present within Archiva that might need more thought.<br>
<br>
Since I'm so close to the code, I have my own (obviously skewed) view
of what's important and what's not.<br>
I could use the opinions of other developers here to flesh out what
concepts need to be detailed the best.<br>
<br>
I'm copy/pasting this list in this email to aide in this discussion.<br>
<div class="section">
<h2>Concepts</h2>
<ul>
  <li>Modules &amp; Source Tree</li>
  <li>Plexus Basics</li>
  <ul>
    <li>Purpose</li>
    <li>Role &amp; Hint</li>
    <li>Descriptors</li>
    <ul>
      <li>META-INF/plexus/components.xml</li>
      <li>META-INF/plexus/application.xml</li>
      <li>src/test/resources/${package}/${test}.xml</li>
    </ul>
    <li>plexus-maven-plugin</li>
    <ul>
      <li>generated and/or merge</li>
      <li>javadoc tags</li>
    </ul>
  </ul>
  <li>Model</li>
  <ul>
    <li>Heirarchy of artifacts.</li>
    <ul>
      <li>Project: ( group Id + artifact Id )</li>
      <li>Versioned: ( project + version )</li>
      <li>Artifact: ( versioned + classifier + type )</li>
    </ul>
    <li>Types of objects.</li>
    <ul>
      <li>Archiva Project Model</li>
      <li>Archiva Artifact</li>
      <ul>
        <li>Java Platform Extension</li>
      </ul>
      <li>Archiva Repository</li>
      <li>Archiva Reposiotry Metadata</li>
      <li>Repository Statistics</li>
      <li>Repository Problem</li>
    </ul>
    <li>Types of Repositories</li>
    <ul>
      <li>Local / Managed</li>
      <ul>
        <li><a class="moz-txt-link-freetext" href="file://">file://</a>...
URLs only</li>
        <li>Indexed</li>
        <li>Statistics</li>
      </ul>
      <li>Remote</li>
    </ul>
  </ul>
  <li>Database / Persistence</li>
  <ul>
    <li>JDO / JPox</li>
    <li>Query / Constraints</li>
    <ul>
      <li>Declarative</li>
      <li>Simple</li>
    </ul>
  </ul>
  <li>Scheduling</li>
  <ul>
    <li>How plexus-quartz &amp; plexus-taskqueue fit in.</li>
    <li>Types of Jobs</li>
    <ul>
      <li>Repository Scanning</li>
      <ul>
        <li>Known Files</li>
        <li>Ignored Files</li>
        <li>Unknown Files</li>
      </ul>
      <li>Database Updates</li>
      <ul>
        <li>Periodic</li>
        <ul>
          <li>Unprocesed Process</li>
          <li>Cleanup</li>
        </ul>
        <li>Nightly</li>
      </ul>
    </ul>
  </ul>
  <li>Consumers</li>
  <ul>
    <li>Purpose</li>
    <li>Discovery</li>
    <li>Configuration</li>
    <li>Types of Consumers</li>
    <ul>
      <li>Repository Artifact</li>
      <li>Database Unprocessed</li>
      <li>Database Cleanup</li>
    </ul>
  </ul>
  <li>Repository Connectors</li>
  <ul>
    <li>Proxy Connector</li>
    <ul>
      <li>Pre Download Policies</li>
      <li>Post Download Policies</li>
    </ul>
  </ul>
  <li>Maven Artifact / Project Libraries</li>
  <ul>
    <li>Bidirectional Repository Layout</li>
    <li>Project Readers</li>
    <li>Project Filters</li>
    <li>Project Resolvers</li>
  </ul>
  <li>Indexer</li>
  <ul>
    <li>Bytecode</li>
    <li>File Content</li>
    <li>Hashcodes</li>
    <li>Analyze / Index</li>
    <li>Search / Query</li>
  </ul>
  <li>Reporting</li>
  <ul>
    <li>Reporting Manager</li>
    <li>Artifact Reports</li>
    <li>Metadata Reports</li>
    <li>Project Reports</li>
  </ul>
  <li>Web Framework</li>
  <ul>
    <li>Webwork &amp; XWork</li>
    <li>&lt;archiva: /&gt; taglib</li>
    <ul>
      <li>&lt;archiva:copy-paste /&gt;</li>
      <li>&lt;archiva:download /&gt;</li>
      <li>&lt;archiva:group-id-link /&gt;</li>
    </ul>
  </ul>
</ul>
</div>
<br>
Thanks in advance!<br>
<pre class="moz-signature" cols="72">-- 
- Joakim Erdfelt
  <a class="moz-txt-link-abbreviated" href="mailto:joakime@apache.org">joakime@apache.org</a>
  <a class="moz-txt-link-abbreviated" href="mailto:joakime@codehaus.org">joakime@codehaus.org</a>
  Archiva Developer
  Alpaca Founding Member 
</pre>
</body>
</html>

Mime
View raw message