Skip to content

Commit 3d167f9

Browse files
author
Jacobi Carter
committed
Some basic interfaces.
1 parent d4ca3e1 commit 3d167f9

File tree

6 files changed

+170
-0
lines changed

6 files changed

+170
-0
lines changed

.gitignore

+40
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
# Eclipse stuff
2+
**/.classpath
3+
**/.project
4+
**/.settings
5+
/.classpath
6+
/.project
7+
/.settings
8+
9+
10+
# netbeans
11+
/nbproject
12+
13+
# we use maven!
14+
/build.xml
15+
16+
# maven
17+
**/target
18+
/target
19+
20+
# vim
21+
.*.sw[a-p]
22+
23+
# various other potential build files
24+
/build
25+
/bin
26+
/dist
27+
/manifest.mf
28+
29+
/world
30+
31+
# Mac filesystem dust
32+
/.DS_Store
33+
34+
# intellij
35+
*.iml
36+
*.ipr
37+
*.iws
38+
.idea/
39+
40+
dependency-reduced-pom.xml

borg-interface/pom.xml

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4+
<modelVersion>4.0.0</modelVersion>
5+
<parent>
6+
<artifactId>borg-parent</artifactId>
7+
<groupId>io.borgframework</groupId>
8+
<version>0.0.0-SNAPSHOT</version>
9+
</parent>
10+
11+
<artifactId>borg-interface</artifactId>
12+
<version>0.0.1-SNAPSHOT</version>
13+
<packaging>jar</packaging>
14+
15+
<name>borg-interface</name>
16+
17+
<dependencies>
18+
</dependencies>
19+
</project>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
package io.borgframework;
2+
3+
import io.borgframework.interfaces.BorgService;
4+
import io.borgframework.interfaces.core.CentralPlexus;
5+
6+
public final class Borg {
7+
8+
private static CentralPlexus plexus;
9+
10+
private Borg() {}
11+
12+
public static <T extends BorgService> T getService(Class<T> serviceType) {
13+
return plexus.getService(serviceType);
14+
}
15+
16+
17+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
package io.borgframework.interfaces;
2+
3+
public interface BorgService {
4+
5+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
package io.borgframework.interfaces.core;
2+
3+
import io.borgframework.interfaces.BorgService;
4+
5+
public interface CentralPlexus {
6+
7+
<T extends BorgService> T getService(Class<T> serviceType);
8+
}

pom.xml

+81
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4+
<modelVersion>4.0.0</modelVersion>
5+
6+
<groupId>io.borgframework</groupId>
7+
<artifactId>borg-parent</artifactId>
8+
<version>0.0.0-SNAPSHOT</version>
9+
<packaging>pom</packaging>
10+
11+
<name>Borg Framework Parent</name>
12+
<url>http://borgframework.io</url>
13+
14+
<properties>
15+
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
16+
<timestamp>${maven.build.timestamp}</timestamp>
17+
<maven.build.timestamp.format>yyyy-MM-dd HH:mm</maven.build.timestamp.format>
18+
</properties>
19+
20+
<modules>
21+
<module>borg-interface</module>
22+
</modules>
23+
24+
<repositories>
25+
<repository>
26+
<snapshots>
27+
<enabled>false</enabled>
28+
</snapshots>
29+
<id>central</id>
30+
<name>Maven Repository Switchboard</name>
31+
<url>http://repo1.maven.org/maven2</url>
32+
</repository>
33+
</repositories>
34+
35+
<dependencyManagement>
36+
<dependencies>
37+
<dependency>
38+
<groupId>com.google.code.gson</groupId>
39+
<artifactId>gson</artifactId>
40+
<version>2.2.4</version>
41+
</dependency>
42+
<dependency>
43+
<groupId>commons-codec</groupId>
44+
<artifactId>commons-codec</artifactId>
45+
<version>1.2</version>
46+
</dependency>
47+
<dependency>
48+
<groupId>commons-io</groupId>
49+
<artifactId>commons-io</artifactId>
50+
<version>1.2</version>
51+
</dependency>
52+
<dependency>
53+
<groupId>com.google.guava</groupId>
54+
<artifactId>guava</artifactId>
55+
<version>18.0</version>
56+
</dependency>
57+
<dependency>
58+
<groupId>org.testng</groupId>
59+
<artifactId>testng</artifactId>
60+
<version>6.8.8</version>
61+
<scope>test</scope>
62+
</dependency>
63+
</dependencies>
64+
</dependencyManagement>
65+
66+
<build>
67+
<plugins>
68+
<plugin>
69+
<groupId>org.apache.maven.plugins</groupId>
70+
<artifactId>maven-compiler-plugin</artifactId>
71+
<version>3.0</version>
72+
<configuration>
73+
<source>1.8</source>
74+
<target>1.8</target>
75+
</configuration>
76+
</plugin>
77+
</plugins>
78+
</build>
79+
</project>
80+
81+
<!-- vim: set ts=2 sw=2 tw=0 expandtab: -->

0 commit comments

Comments
 (0)