[LIB-13] Add maven project object model
authorgotty <gotty@hedgecode.org>
Sun, 12 Jan 2020 01:35:19 +0000 (04:35 +0300)
committergotty <gotty@hedgecode.org>
Sun, 12 Jan 2020 01:35:19 +0000 (04:35 +0300)
CHANGELOG [new file with mode: 0644]
LICENSE
NOTICE
pom.xml [new file with mode: 0644]

diff --git a/CHANGELOG b/CHANGELOG
new file mode 100644 (file)
index 0000000..4fc7821
--- /dev/null
+++ b/CHANGELOG
@@ -0,0 +1,10 @@
+CHANGELOG Hedgecode ChessHog Scanner
+====================================
+
+v.0.1 [2020-XX-XX]
+------------------
+- Initial release of the library
+- Base hierarchy of scanner classes
+- Scanner configuration settings via JSON files
+- Ability to work through a proxy server
+- ...
diff --git a/LICENSE b/LICENSE
index 7cb98fd..f24588e 100644 (file)
--- a/LICENSE
+++ b/LICENSE
 
 ***************************************************************************
 
-   Copyright (c) 20192020 Hedgecode. All rights reserved.
+   Copyright (c) 2019-2020 Hedgecode. All rights reserved.
 
    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
+     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,
diff --git a/NOTICE b/NOTICE
index 5718f96..5bbef89 100644 (file)
--- a/NOTICE
+++ b/NOTICE
@@ -1,6 +1,6 @@
 
 Hedgecode ChessHog Scanner
-Copyright (c) 20192020 Hedgecode. All rights reserved.
+Copyright (c) 2019-2020 Hedgecode. All rights reserved.
 
 This product includes software developed at
 Hedgecode (https://hedgecode.org/).
diff --git a/pom.xml b/pom.xml
new file mode 100644 (file)
index 0000000..d423cdc
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,256 @@
+<?xml version='1.0' encoding='UTF-8'?>
+
+<!--
+  ~ Copyright (c) 2019-2020. Developed by Hedgecode.
+  ~
+  ~ 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.
+  -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <groupId>org.hedgecode.maven</groupId>
+        <artifactId>lib-parent</artifactId>
+        <version>2</version>
+        <relativePath>../lib-parent/pom.xml</relativePath>
+    </parent>
+
+    <groupId>org.hedgecode.chess</groupId>
+    <artifactId>chesshog-scanner</artifactId>
+    <version>0.1-SNAPSHOT</version>
+    <packaging>pom</packaging>
+
+    <name>Hedgecode ChessHog Scanner</name>
+    <description>
+        Hedgecode ChessHog Scanner is a Java library for parsing PGN format chess games from various chess internet portals.
+    </description>
+    <inceptionYear>2019</inceptionYear>
+
+    <url>https://lib.hedgecode.org/${project.artifactId}/</url>
+
+    <scm>
+        <connection>scm:svn:http://svn.hedgecode.org/lib/${project.artifactId}/trunk/</connection>
+        <developerConnection>scm:svn:https://svn.hedgecode.org/lib/${project.artifactId}/trunk/</developerConnection>
+        <url>http://svn.hedgecode.org/lib/${project.artifactId}/trunk/</url>
+    </scm>
+
+    <issueManagement>
+        <system>JIRA</system>
+        <url>https://issues.hedgecode.org/browse/${issueKey}/component/${issueComponentId}</url>
+    </issueManagement>
+
+    <distributionManagement>
+        <site>
+            <id>hedgecode.website</id>
+            <name>Hedgecode Libs Website</name>
+            <url>dav:https://hedgecode.org/libs/${project.artifactId}/</url>
+        </site>
+    </distributionManagement>
+
+    <properties>
+        <chessHogVersion>0.1-SNAPSHOT</chessHogVersion>
+        <httpCoreVersion>4.4.11</httpCoreVersion>
+        <httpClientVersion>4.5.9</httpClientVersion>
+        <gsonVersion>2.8.0</gsonVersion>
+        <junitVersion>4.12</junitVersion>
+        <commonsConfigVersion>1.10</commonsConfigVersion>
+        <commonsCollectionVersion>3.2.1</commonsCollectionVersion>
+        <mavenDependencyPluginVersion>2.8</mavenDependencyPluginVersion>
+        <mavenAssemblyPluginVersion>2.4.1</mavenAssemblyPluginVersion>
+        <issueComponentId>10030</issueComponentId>
+        <issueNumber>13</issueNumber>
+    </properties>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.httpcomponents</groupId>
+            <artifactId>httpcore</artifactId>
+            <version>${httpCoreVersion}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.httpcomponents</groupId>
+            <artifactId>httpclient</artifactId>
+            <version>${httpClientVersion}</version>
+        </dependency>
+        <dependency>
+            <groupId>com.google.code.gson</groupId>
+            <artifactId>gson</artifactId>
+            <version>${gsonVersion}</version>
+        </dependency>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <version>${junitVersion}</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>commons-configuration</groupId>
+            <artifactId>commons-configuration</artifactId>
+            <version>${commonsConfigVersion}</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>commons-collections</groupId>
+            <artifactId>commons-collections</artifactId>
+            <version>${commonsCollectionVersion}</version>
+            <scope>test</scope>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-dependency-plugin</artifactId>
+                <version>${mavenDependencyPluginVersion}</version>
+                <executions>
+                    <execution>
+                        <id>copy-dependencies</id>
+                        <phase>prepare-package</phase>
+                        <goals>
+                            <goal>copy-dependencies</goal>
+                        </goals>
+                        <configuration>
+                            <outputDirectory>${project.build.directory}/lib</outputDirectory>
+                            <overWriteReleases>false</overWriteReleases>
+                            <overWriteSnapshots>false</overWriteSnapshots>
+                            <overWriteIfNewer>true</overWriteIfNewer>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-jar-plugin</artifactId>
+                <version>${mavenJarPluginVersion}</version>
+                <configuration>
+                    <archive>
+                        <manifest>
+                            <addClasspath>true</addClasspath>
+                            <classpathPrefix>lib/</classpathPrefix>
+                            <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
+                            <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
+                            <mainClass>org.hedgecode.chess.scanner.ChessHogScannerApp</mainClass>
+                        </manifest>
+                        <manifestEntries>
+                            <Implementation-Title>${project.artifactId}</Implementation-Title>
+                        </manifestEntries>
+                    </archive>
+                </configuration>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-release-plugin</artifactId>
+                <version>${mavenReleasePluginVersion}</version>
+                <configuration>
+                    <tagBase>https://svn.hedgecode.org/lib/${project.artifactId}/tags</tagBase>
+                    <branchBase>https://svn.hedgecode.org/lib/${project.artifactId}/branches</branchBase>
+                    <preparationGoals>clean install</preparationGoals>
+                    <goals>deploy</goals>
+                    <releaseProfiles>release</releaseProfiles>
+                    <scmCommentPrefix xml:space="preserve">[${issueKey}-${issueNumber}] </scmCommentPrefix>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+
+    <reporting>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-project-info-reports-plugin</artifactId>
+                <version>${mavenReportsPluginVersion}</version>
+                <configuration>
+                    <dependencyLocationsEnabled>false</dependencyLocationsEnabled>
+                </configuration>
+                <reportSets>
+                    <reportSet>
+                        <reports>
+                            <report>index</report>
+                            <report>summary</report>
+                            <report>dependency-info</report>
+                            <report>project-team</report>
+                            <report>scm</report>
+                            <report>dependency-management</report>
+                            <report>dependencies</report>
+                            <report>plugin-management</report>
+                            <report>plugins</report>
+                            <report>distribution-management</report>
+                        </reports>
+                    </reportSet>
+                </reportSets>
+            </plugin>
+        </plugins>
+    </reporting>
+
+    <profiles>
+        <profile>
+            <id>jar-with-dependencies</id>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.apache.maven.plugins</groupId>
+                        <artifactId>maven-assembly-plugin</artifactId>
+                        <version>${mavenAssemblyPluginVersion}</version>
+                        <configuration>
+                            <archive>
+                                <manifest>
+                                    <addClasspath>true</addClasspath>
+                                    <classpathPrefix>lib/</classpathPrefix>
+                                    <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
+                                    <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
+                                    <mainClass>org.hedgecode.chess.scanner.ChessHogScannerApp</mainClass>
+                                </manifest>
+                                <manifestEntries>
+                                    <Implementation-Title>${project.artifactId}</Implementation-Title>
+                                </manifestEntries>
+                            </archive>
+                            <descriptorRefs>
+                                <descriptorRef>jar-with-dependencies</descriptorRef>
+                            </descriptorRefs>
+                        </configuration>
+                        <executions>
+                            <execution>
+                                <id>make-assembly</id>
+                                <phase>package</phase>
+                                <goals>
+                                    <goal>single</goal>
+                                </goals>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+        <profile>
+            <id>reporting</id>
+            <reporting>
+                <plugins>
+                    <plugin>
+                        <groupId>org.apache.maven.plugins</groupId>
+                        <artifactId>maven-javadoc-plugin</artifactId>
+                        <configuration>
+                            <sourceFileExcludes>
+                                <!--<exclude>org/hedgecode/chess/scanner/*.java</exclude>-->
+                            </sourceFileExcludes>
+                        </configuration>
+                    </plugin>
+                </plugins>
+            </reporting>
+        </profile>
+    </profiles>
+
+</project>