<!--
 Copyright (C) 2014 The Android Open Source Project

 Licensed under the Apache License, Version 2.0 (the 'License');
 you may not use this file except in compliance with the License.
 You may obtain a copy of the License at

 http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an 'AS IS' BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
-->
<module>
  <inherits name='org.eclipse.jgit.JGit'/>
  <inherits name='com.google.gerrit.common.Common'/>
  <inherits name='com.google.gerrit.extensions.Extensions'/>
  <inherits name='com.google.gerrit.prettify.PrettyFormatter'/>
  <inherits name='com.google.gwtexpui.clippy.Clippy'/>
  <inherits name='com.google.gwtexpui.globalkey.GlobalKey'/>
  <inherits name='com.google.gwtexpui.progress.Progress'/>
  <inherits name='com.google.gwtexpui.safehtml.SafeHtml'/>
  <source path='client'>
    <include name='AccountFormatter.java'/>
    <include name='CommonConstants.java'/>
    <include name='CommonMessages.java'/>
    <include name='DateFormatter.java'/>
    <include name='GerritUiExtensionPoint.java'/>
    <include name='RelativeDateFormatter.java'/>
    <include name='Resources.java'/>
    <include name='CommonConstants.properties'/>
    <include name='CommonMessages.properties'/>
    <include name='info/*.java'/>
    <include name='rpc/NativeMap.java'/>
    <include name='rpc/Natives.java'/>
    <include name='rpc/NativeString.java'/>
    <include name='rpc/TransformCallback.java'/>
    <include name='ui/HighlightSuggestion.java'/>
    <include name='ui/RemoteSuggestOracle.java'/>
  </source>
</module>
