<!DOCTYPE html>
<!--
 | Generated by Apache Maven Doxia at May 31, 2013
 | Rendered using Apache Maven Fluido Skin 1.3.0
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta name="Date-Revision-yyyymmdd" content="20130531" />
    <meta http-equiv="Content-Language" content="en" />
    <title>Archiva :: Modules - Team list</title>
    <link rel="stylesheet" href="./css/apache-maven-fluido-1.3.0.min.css" />
    <link rel="stylesheet" href="./css/site.css" />
    <link rel="stylesheet" href="./css/print.css" media="print" />

      
    <script type="text/javascript" src="./js/apache-maven-fluido-1.3.0.min.js"></script>

    
            </head>
        <body class="topBarEnabled">
          
                        
                    
                

    <div id="topbar" class="navbar navbar-fixed-top ">
      <div class="navbar-inner">
                                  <div class="container"><div class="nav-collapse">
            
                
                                <ul class="nav">
                          <li class="dropdown">
        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Developers <b class="caret"></b></a>
        <ul class="dropdown-menu">
        
                      <li>      <a href="index.html"  title="Overview">Overview</a>
</li>
                  
                      <li>      <a href="terminology.html"  title="Terminology">Terminology</a>
</li>
                  
                      <li>      <a href="metadata-content-model.html"  title="Metadata Control Model">Metadata Control Model</a>
</li>
                  
                      <li>      <a href="metadata-api.html"  title="Metadata API">Metadata API</a>
</li>
                  
                      <li>      <a href="repository-api.html"  title="Repository API">Repository API</a>
</li>
                          </ul>
      </li>
                <li class="dropdown">
        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Modules <b class="caret"></b></a>
        <ul class="dropdown-menu">
        
                      <li>      <a href="archiva-base/index.html"  title="Archiva :: Base">Archiva :: Base</a>
</li>
                  
                      <li>      <a href="archiva-scheduler/index.html"  title="Archiva :: Scheduler">Archiva :: Scheduler</a>
</li>
                  
                      <li>      <a href="archiva-web/index.html"  title="Archiva :: Web">Archiva :: Web</a>
</li>
                  
                      <li>      <a href="archiva-karaf/index.html"  title="Archiva :: Karaf">Archiva :: Karaf</a>
</li>
                  
                      <li>      <a href="metadata/index.html"  title="Archiva :: Metadata">Archiva :: Metadata</a>
</li>
                  
                      <li>      <a href="plugins/index.html"  title="Archiva :: Core Plugins">Archiva :: Core Plugins</a>
</li>
                          </ul>
      </li>
                <li class="dropdown">
        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Project Documentation <b class="caret"></b></a>
        <ul class="dropdown-menu">
        
                      <li class="dropdown-submenu">
                                      <a href="project-info.html"  title="Project Information">Project Information</a>
              <ul class="dropdown-menu">
                                  <li>      <a href="index.html"  title="About">About</a>
</li>
                                  <li>      <a href="team-list.html"  title="Project Team">Project Team</a>
</li>
                                  <li>      <a href="modules.html"  title="Project Modules">Project Modules</a>
</li>
                                  <li>      <a href="dependency-info.html"  title="Dependency Information">Dependency Information</a>
</li>
                                  <li>      <a href="dependency-management.html"  title="Dependency Management">Dependency Management</a>
</li>
                                  <li>      <a href="plugins.html"  title="Project Plugins">Project Plugins</a>
</li>
                                  <li>      <a href="integration.html"  title="Continuous Integration">Continuous Integration</a>
</li>
                                  <li>      <a href="issue-tracking.html"  title="Issue Tracking">Issue Tracking</a>
</li>
                                  <li>      <a href="source-repository.html"  title="Source Repository">Source Repository</a>
</li>
                                  <li>      <a href="dependency-convergence.html"  title="Dependency Convergence">Dependency Convergence</a>
</li>
                                  <li>      <a href="license.html"  title="Project License">Project License</a>
</li>
                                  <li>      <a href="plugin-management.html"  title="Plugin Management">Plugin Management</a>
</li>
                                  <li>      <a href="distribution-management.html"  title="Distribution Management">Distribution Management</a>
</li>
                                  <li>      <a href="project-summary.html"  title="Project Summary">Project Summary</a>
</li>
                                  <li>      <a href="mail-lists.html"  title="Mailing Lists">Mailing Lists</a>
</li>
                                  <li>      <a href="dependencies.html"  title="Dependencies">Dependencies</a>
</li>
                              </ul>
            </li>
                  
                      <li class="dropdown-submenu">
                                      <a href="project-reports.html"  title="Project Reports">Project Reports</a>
              <ul class="dropdown-menu">
                                  <li>      <a href="xref/index.html"  title="Source Xref">Source Xref</a>
</li>
                                  <li>      <a href="xref-test/index.html"  title="Test Source Xref">Test Source Xref</a>
</li>
                                  <li>      <a href="checkstyle-aggregate.html"  title="Checkstyle">Checkstyle</a>
</li>
                                  <li>      <a href="apidocs/index.html"  title="JavaDocs">JavaDocs</a>
</li>
                              </ul>
            </li>
                          </ul>
      </li>
                  </ul>
          
                      <form id="search-form" action="http://www.google.com/search" method="get"  class="navbar-search pull-right" >
    
  <input value="http://archiva.apache.org/ref/1.4-M4" name="sitesearch" type="hidden"/>
  <input class="search-query" name="q" id="query" type="text" />
</form>
<script type="text/javascript" src="http://www.google.com/coop/cse/brand?form=search-form"></script>
          
                                                    
        
        
        <ul class="nav pull-right"><li>
    
    <a href="https://twitter.com/archiva" class="twitter-follow-button" data-show-count="false" data-align="right" data-size="large" data-show-screen-name="true" data-lang="en">Follow archiva</a>
    <script type="text/javascript">!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>

        </li></ul>
                
                   
                      </div>
          
        </div>
      </div>
    </div>
    
        <div class="container">
          <div id="banner">
        <div class="pull-left">
                                                  <a href="../../index.html" id="bannerLeft">
                                                                                                <img src="../../images/archiva.png"  alt="Apache Archiva"/>
                </a>
                      </div>
        <div class="pull-right">                  <a href="http://www.apache.org/" id="bannerRight">
                                                                                        <img src="http://www.apache.org/images/asf_logo_wide.png"  alt="Apache Software Foundation"/>
                </a>
      </div>
        <div class="clear"><hr/></div>
      </div>

      <div id="breadcrumbs">
        <ul class="breadcrumb">
                
                    
                              <li class="">
                    <a href="http://www.apache.org/" class="externalLink" title="Apache">
        Apache</a>
        </li>
      <li class="divider ">/</li>
                <li class="">
                    <a href="./" title="Apache Archiva">
        Apache Archiva</a>
        </li>
      <li class="divider ">/</li>
                <li class="">
                    <a href="./" title="Archiva :: Modules">
        Archiva :: Modules</a>
        </li>
      <li class="divider ">/</li>
        <li class="">Team list</li>
        
                
                    
                  <li id="publishDate" class="pull-right">Last Published: 31 May 2013</li> 
            
                            </ul>
      </div>

      
                
        <div id="bodyColumn" >
                                  
            <div class="section"><h2>The Team<a name="The_Team"></a></h2><a name="The_Team"></a><p>A successful project requires many people to play many roles. Some members write code or documentation, while others are valuable as testers, submitting patches and suggestions.</p><p>The team is comprised of Members and Contributors. Members have direct access to the source of a project and actively evolve the code-base. Contributors improve the project through submission of patches and suggestions to the Members. The number of Contributors to the project is unbounded. Get involved today. All contributions to the project are greatly appreciated.</p><div class="section"><h3>Members<a name="Members"></a></h3><a name="Members"></a><p>The following is a list of developers with commit privileges that have directly contributed to the project in one way or another.</p><table border="0" class="table table-striped"><tr class="a"><th>Image</th><th>Id</th><th>Name</th><th>Email</th><th>Organization</th><th>Roles</th><th>Time Zone</th><th>Actual Time (GMT)</th></tr><tr class="b"><td><img src="http://www.gravatar.com/avatar/a49e2c09c4c36374c40e6cb819157eda?d=mm&amp;s=60" alt="" /></td><td><a name="oching"></a>oching</td><td>Maria Odea B. Ching</td><td><a class="externalLink" href="mailto:oching@apache.org">oching@apache.org</a></td><td>-</td><td>PMC Chair</td><td>+8</td><td><span id="developer-0">+8</span></td></tr><tr class="a"><td><img src="http://www.gravatar.com/avatar/1db61ec29963d4a77ef2275140144fd4?d=mm&amp;s=60" alt="" /></td><td><a name="brett"></a>brett</td><td>Brett Porter</td><td><a class="externalLink" href="mailto:brett@apache.org">brett@apache.org</a></td><td>ASF</td><td>PMC Member</td><td>+10</td><td><span id="developer-1">+10</span></td></tr><tr class="b"><td><img src="http://www.gravatar.com/avatar/6559d4b2de15cb1433fc13c34599e4c7?d=mm&amp;s=60" alt="" /></td><td><a name="carlos"></a>carlos</td><td>Carlos Sanchez</td><td><a class="externalLink" href="mailto:carlos@apache.org">carlos@apache.org</a></td><td>ASF</td><td>PMC Member</td><td>+1</td><td><span id="developer-2">+1</span></td></tr><tr class="a"><td><img src="http://www.gravatar.com/avatar/89d1772a8f19085482a13decc709cda2?d=mm&amp;s=60" alt="" /></td><td><a name="epunzalan"></a>epunzalan</td><td>Edwin Punzalan</td><td><a class="externalLink" href="mailto:epunzalan@apache.org">epunzalan@apache.org</a></td><td>-</td><td>PMC Member</td><td>-8</td><td><span id="developer-3">-8</span></td></tr><tr class="b"><td><img src="http://www.gravatar.com/avatar/3fe23ff82e7920b5941e18515adf9bba?d=mm&amp;s=60" alt="" /></td><td><a name="nicolas"></a>nicolas</td><td>Nicolas De Loof</td><td><a class="externalLink" href="mailto:nicolas@apache.org">nicolas@apache.org</a></td><td>-</td><td>PMC Member</td><td>+1</td><td><span id="developer-4">+1</span></td></tr><tr class="a"><td><img src="http://www.gravatar.com/avatar/bab29f762bea8e578505424443d8cd41?d=mm&amp;s=60" alt="" /></td><td><a name="olamy"></a>olamy</td><td>Olivier Lamy</td><td><a class="externalLink" href="mailto:olamy@apache.org">olamy@apache.org</a></td><td>Talend</td><td>PMC Member</td><td>Australia/Melbourne</td><td><span id="developer-5">Australia/Melbourne</span></td></tr><tr class="b"><td><img src="http://www.gravatar.com/avatar/c8686cad245196c9e392201ad7bb364f?d=mm&amp;s=60" alt="" /></td><td><a name="dennisl"></a>dennisl</td><td>Dennis Lundberg</td><td><a class="externalLink" href="mailto:dennisl@apache.org">dennisl@apache.org</a></td><td>ASF</td><td>Committer</td><td>+1</td><td><span id="developer-6">+1</span></td></tr><tr class="a"><td><img src="http://www.gravatar.com/avatar/76f1823568e5f31931bd32415a4cffa7?d=mm&amp;s=60" alt="" /></td><td><a name="martinc"></a>martinc</td><td>Martin Cooper</td><td><a class="externalLink" href="mailto:martinc@apache.org">martinc@apache.org</a></td><td>ASF</td><td>Committer</td><td>-</td><td><span id="developer-7">-</span></td></tr><tr class="b"><td><img src="http://www.gravatar.com/avatar/07a0055c4259569aff19ee558ee3999d?d=mm&amp;s=60" alt="" /></td><td><a name="mbaclay"></a>mbaclay</td><td>Marecor M. Baclay</td><td><a class="externalLink" href="mailto:mbaclay@apache.org">mbaclay@apache.org</a></td><td>-</td><td>Committer</td><td>+8</td><td><span id="developer-8">+8</span></td></tr><tr class="a"><td><img src="http://www.gravatar.com/avatar/026acc6fb60c44ed137de35517837065?d=mm&amp;s=60" alt="" /></td><td><a name="jzurbano"></a>jzurbano</td><td>Jevica Arianne B. Zurbano</td><td><a class="externalLink" href="mailto:jzurbano@apache.org">jzurbano@apache.org</a></td><td>-</td><td>Committer</td><td>+8</td><td><span id="developer-9">+8</span></td></tr><tr class="b"><td><img src="http://www.gravatar.com/avatar/27790393b874159fe05609ca7ed812f9?d=mm&amp;s=60" alt="" /></td><td><a name="jbonofre"></a>jbonofre</td><td>Jean-Baptiste Onofr&#xe9;</td><td><a class="externalLink" href="mailto:jbonofre@apache.org">jbonofre@apache.org</a></td><td>Talend</td><td>Committer</td><td>+1</td><td><span id="developer-10">+1</span></td></tr><tr class="a"><td><img src="http://www.gravatar.com/avatar/030e414fc478d45703ba0cbf6fa431f9?d=mm&amp;s=60" alt="" /></td><td><a name="skygo"></a>skygo</td><td>Eric Barboni</td><td><a class="externalLink" href="mailto:skygo@apache.org">skygo@apache.org</a></td><td>ASF</td><td>Committer</td><td>+1</td><td><span id="developer-11">+1</span></td></tr><tr class="b"><td><img src="http://www.gravatar.com/avatar/aeb4e8e65a6c91233e1a9128d8989093?d=mm&amp;s=60" alt="" /></td><td><a name="alecharp"></a>alecharp</td><td>Adrien Lecharpentier</td><td><a class="externalLink" href="mailto:alecharp@apache.org">alecharp@apache.org</a></td><td>Zenika</td><td>Committer</td><td>+1</td><td><span id="developer-12">+1</span></td></tr><tr class="a"><td><img src="http://www.gravatar.com/avatar/38f7796e51a469f8efc08de2d88fa335?d=mm&amp;s=60" alt="" /></td><td><a name="joakime"></a>joakime</td><td>Joakim Erdfelt</td><td><a class="externalLink" href="mailto:joakime@apache.org">joakime@apache.org</a></td><td>ASF</td><td>Emeritus</td><td>-5</td><td><span id="developer-13">-5</span></td></tr><tr class="b"><td><img src="http://www.gravatar.com/avatar/00000000000000000000000000000000?d=blank&amp;f=y&amp;s=60" alt="" /></td><td><a name="jvanzyl"></a>jvanzyl</td><td>Jason van Zyl</td><td>-</td><td>-</td><td>Emeritus</td><td>-</td><td><span id="developer-14">-</span></td></tr><tr class="a"><td><img src="http://www.gravatar.com/avatar/00000000000000000000000000000000?d=blank&amp;f=y&amp;s=60" alt="" /></td><td><a name="bayard"></a>bayard</td><td>Henri Yandell</td><td>-</td><td>-</td><td>Emeritus</td><td>-</td><td><span id="developer-15">-</span></td></tr><tr class="b"><td><img src="http://www.gravatar.com/avatar/00000000000000000000000000000000?d=blank&amp;f=y&amp;s=60" alt="" /></td><td><a name="kenney"></a>kenney</td><td>Kenney Westerhof</td><td>-</td><td>-</td><td>Emeritus</td><td>-</td><td><span id="developer-16">-</span></td></tr><tr class="a"><td><img src="http://www.gravatar.com/avatar/00000000000000000000000000000000?d=blank&amp;f=y&amp;s=60" alt="" /></td><td><a name="aheritier"></a>aheritier</td><td>Arnaud Heritier</td><td>-</td><td>-</td><td>Emeritus</td><td>-</td><td><span id="developer-17">-</span></td></tr><tr class="b"><td><img src="http://www.gravatar.com/avatar/00000000000000000000000000000000?d=blank&amp;f=y&amp;s=60" alt="" /></td><td><a name="bellingard"></a>bellingard</td><td>Fabrice Bellingard</td><td>-</td><td>-</td><td>Emeritus</td><td>-</td><td><span id="developer-18">-</span></td></tr><tr class="a"><td><img src="http://www.gravatar.com/avatar/00000000000000000000000000000000?d=blank&amp;f=y&amp;s=60" alt="" /></td><td><a name="jdumay"></a>jdumay</td><td>James William Dumay</td><td>-</td><td>-</td><td>Emeritus</td><td>-</td><td><span id="developer-19">-</span></td></tr><tr class="b"><td><img src="http://www.gravatar.com/avatar/00000000000000000000000000000000?d=blank&amp;f=y&amp;s=60" alt="" /></td><td><a name="jmcconnell"></a>jmcconnell</td><td>Jesse McConnell</td><td>-</td><td>-</td><td>Emeritus</td><td>-</td><td><span id="developer-20">-</span></td></tr><tr class="a"><td><img src="http://www.gravatar.com/avatar/efe7252f3b18253bf4318062ece95a3b?d=mm&amp;s=60" alt="" /></td><td><a name="evenisse"></a>evenisse</td><td>Emmanuel Venisse</td><td><a class="externalLink" href="mailto:evenisse@apache.org">evenisse@apache.org</a></td><td>-</td><td>Emeritus</td><td>-</td><td><span id="developer-21">-</span></td></tr><tr class="b"><td><img src="http://www.gravatar.com/avatar/b38a3be83226b10b399985496c058e4c?d=mm&amp;s=60" alt="" /></td><td><a name="jtolentino"></a>jtolentino</td><td>Ernesto Tolentino Jr.</td><td><a class="externalLink" href="mailto:jtolentino@apache.org">jtolentino@apache.org</a></td><td>-</td><td>Emeritus</td><td>-</td><td><span id="developer-22">-</span></td></tr><tr class="a"><td><img src="http://www.gravatar.com/avatar/00000000000000000000000000000000?d=blank&amp;f=y&amp;s=60" alt="" /></td><td><a name="wsmoak"></a>wsmoak</td><td>Wendy Smoak</td><td>-</td><td>-</td><td>Emeritus</td><td>-</td><td><span id="developer-23">-</span></td></tr></table></div><div class="section"><h3>Contributors<a name="Contributors"></a></h3><a name="Contributors"></a><p>The following additional people have contributed to this project through the way of suggestions, patches or documentation.</p><table border="0" class="table table-striped"><tr class="a"><th>Name</th></tr><tr class="b"><td>Steffen Grunwald</td></tr><tr class="a"><td>Stefan Prange</td></tr><tr class="b"><td>John Michael Luy</td></tr><tr class="a"><td>Martin H&#xf6;ller</td></tr><tr class="b"><td>Stephen Gargan</td></tr><tr class="a"><td>Dario Oliveros</td></tr><tr class="b"><td>james ahlborn</td></tr><tr class="a"><td>Jim Jackson</td></tr><tr class="b"><td>Daniel Harvey</td></tr><tr class="a"><td>Aleksandr Tarutin</td></tr><tr class="b"><td>Teodoro Cue Jr.</td></tr><tr class="a"><td>Jan Ancajas</td></tr><tr class="b"><td>Jens M&#xfc;hlenhoff</td></tr><tr class="a"><td>Dawn Angelito</td></tr><tr class="b"><td>Henry Isidro</td></tr><tr class="a"><td>Antoine Veret</td></tr><tr class="b"><td>Christian Gruber</td></tr><tr class="a"><td>Allan Ramirez</td></tr><tr class="b"><td>Pete Marvin King</td></tr><tr class="a"><td>Joel Sudiacal</td></tr><tr class="b"><td>Milos Kleint</td></tr><tr class="a"><td>Nick Gonzalez</td></tr><tr class="b"><td>Maria Catherine Tan</td></tr><tr class="a"><td>Dan Tran</td></tr><tr class="b"><td>Gwen Harold Autencio</td></tr><tr class="a"><td>Mark Jeffery</td></tr><tr class="b"><td>Fabrice Daugan</td></tr><tr class="a"><td>Doron Solomon</td></tr><tr class="b"><td>Michal Stochmialek</td></tr><tr class="a"><td>Julien Henry</td></tr><tr class="b"><td>Andreas Baumann</td></tr><tr class="a"><td>Adelita L. Padilla</td></tr><tr class="b"><td>Daniel Triphaus</td></tr><tr class="a"><td>Patti Arachchige Eshan Sudharaka</td></tr><tr class="b"><td>Shinsuke Sugaya</td></tr><tr class="a"><td>Marcus Dimand</td></tr><tr class="b"><td>Catalino Pineda Jr.</td></tr><tr class="a"><td>Warner Pinero</td></tr><tr class="b"><td>Dave Brosius</td></tr><tr class="a"><td>Jim Sellers</td></tr><tr class="b"><td>Igor Galic</td></tr><tr class="a"><td>Mark Struberg</td></tr><tr class="b"><td>Marc Jansen Tan Chua</td></tr><tr class="a"><td>Lucien Weller</td></tr><tr class="b"><td>Greg Michael Meneses</td></tr><tr class="a"><td>Chris Graham</td></tr><tr class="b"><td>Fredrik Jonson</td></tr><tr class="a"><td>Lester Ecarma</td></tr><tr class="b"><td>Eirik Bj&#xf8;rsn&#xf8;s</td></tr><tr class="a"><td>Jan Ancajas</td></tr><tr class="b"><td>Damien Blugeon</td></tr><tr class="a"><td>John Michael Luy</td></tr><tr class="b"><td>Wolfgang Strunk</td></tr><tr class="a"><td>Jevica Arianne B. Zurbano</td></tr><tr class="b"><td>Stefan Prange</td></tr><tr class="a"><td>Napoleon Esmundo C. Ramirez</td></tr><tr class="b"><td>Brent Atkinson</td></tr><tr class="a"><td>Antoine ROUAZE</td></tr></table><script type="text/javascript">
function offsetDate(id, offset) {
    var now = new Date();
    var nowTime = now.getTime();
    var localOffset = now.getTimezoneOffset();
    var developerTime = nowTime + ( offset * 60 * 60 * 1000 )+ ( localOffset * 60 * 1000 );
    var developerDate = new Date(developerTime);

    document.getElementById(id).innerHTML = developerDate;
}

function init(){
    offsetDate('developer-0', '+8');
    offsetDate('developer-1', '+10');
    offsetDate('developer-2', '+1');
    offsetDate('developer-3', '-8');
    offsetDate('developer-4', '+1');
    offsetDate('developer-5', '10');
    offsetDate('developer-6', '+1');
    offsetDate('developer-8', '+8');
    offsetDate('developer-9', '+8');
    offsetDate('developer-10', '+1');
    offsetDate('developer-11', '+1');
    offsetDate('developer-12', '+1');
    offsetDate('developer-13', '-5');
}

window.onLoad = init();
</script></div></div>
                  </div>
          </div>

    <hr/>

    <footer>
            <div class="container">
              <div class="row span12">Copyright &copy;                    2006-2013
                        <a href="http://www.apache.org/">The Apache Software Foundation</a>.
            All Rights Reserved.      
                    
      </div>

        
                <p id="poweredBy" class="pull-right">
                          <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
        <img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" />
      </a>
              </p>
        
          
    
    
                
    <div id="ohloh" class="pull-right">
      <script type="text/javascript" src="http://www.ohloh.net/p/6670/widgets/project_basic_stats.js"></script>
    </div>
        </div>
    </footer>
  </body>
</html>