Skip to content

Commit 94c18bd

Browse files
committed
Version 5.0 (2020-06-05)
Remove deprecated code. Remove the TCP host interface kernel extension. Remove the kernel application’s GUI. TCSObject and its subclasses are now immutable and do no longer implement the Cloneable interface. Remove the JDOM dependency. In BasicCommunicationAdapter, use an injected ExecutorService (e.g. the kernel executor) instead of starting a separate thread for every vehicle driver instance. Add a new and cleaned up version of the XML Schema definition for the openTCS plant model and add new bindings. Update project to Java 13. Update Mockito to 2.28.2.
0 parents  commit 94c18bd

File tree

1,497 files changed

+155166
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,497 files changed

+155166
-0
lines changed

build.gradle

+107
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,107 @@
1+
buildscript {
2+
repositories {
3+
jcenter()
4+
maven {
5+
url "https://plugins.gradle.org/m2/"
6+
}
7+
}
8+
dependencies {
9+
// License plugin
10+
classpath 'gradle.plugin.nl.javadude.gradle.plugins:license-gradle-plugin:0.13.1'
11+
// Versions plugin
12+
classpath 'com.github.ben-manes:gradle-versions-plugin:0.12.0'
13+
// Stats plugin
14+
classpath 'org.kordamp.gradle:stats-gradle-plugin:0.2.0'
15+
}
16+
}
17+
18+
apply plugin: 'base' // To add "clean" task to the root project.
19+
apply plugin: 'distribution'
20+
apply plugin: 'com.github.ben-manes.versions'
21+
22+
apply from: "${rootDir}/gradle/common.gradle"
23+
24+
subprojects {
25+
apply from: rootProject.file('gradle/common.gradle')
26+
}
27+
evaluationDependsOnChildren()
28+
29+
distributions {
30+
main {
31+
contents.from {
32+
project(':openTCS-Kernel').ext.collectableDistDir
33+
}
34+
contents.from {
35+
project(':openTCS-KernelControlCenter').ext.collectableDistDir
36+
}
37+
contents.from {
38+
project(':openTCS-PlantOverview').ext.collectableDistDir
39+
}
40+
contents.from {
41+
project(':openTCS-Documentation').ext.collectableDistDir
42+
}
43+
}
44+
}
45+
46+
task statsAggregate(type: org.kordamp.gradle.stats.AggregateStatsReportTask) {
47+
dependsOn subprojects*.stats
48+
}
49+
50+
task subDists {
51+
dependsOn(':openTCS-Kernel:installDist')
52+
dependsOn(':openTCS-KernelControlCenter:installDist')
53+
dependsOn(':openTCS-PlantOverview:installDist')
54+
dependsOn(':openTCS-Documentation:installDist')
55+
}
56+
57+
task install {
58+
dependsOn subprojects*.install
59+
}
60+
61+
installDist.dependsOn subDists
62+
63+
distZip {
64+
classifier = 'bin'
65+
dependsOn subDists
66+
}
67+
68+
distTar {
69+
classifier = 'bin'
70+
dependsOn subDists
71+
compression = Compression.GZIP
72+
}
73+
74+
task distSrcZip(type: Zip) {
75+
classifier = 'src'
76+
from "${rootDir}"
77+
78+
includes << 'config/**'
79+
includes << 'gradle/**'
80+
includes << 'openTCS-*/**'
81+
includes << 'src/**'
82+
includes << '.nb-gradle-properties'
83+
includes << '*.gradle'
84+
includes << 'gradlew'
85+
includes << 'gradlew.bat'
86+
87+
excludes << '.gitlab'
88+
excludes << '.gradle'
89+
excludes << '**/build'
90+
}
91+
92+
artifacts {
93+
archives distZip
94+
archives distSrcZip
95+
}
96+
97+
build {
98+
dependsOn subprojects*.build
99+
dependsOn installDist
100+
}
101+
102+
task release {
103+
dependsOn build
104+
dependsOn subprojects*.release
105+
dependsOn distZip
106+
dependsOn distSrcZip
107+
}

config/LICENSE

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
Copyright (c) The openTCS Authors.
2+
3+
This program is free software and subject to the MIT license. (For details,
4+
see the licensing information (LICENSE.txt) you should have received with
5+
this copy of the software.)

config/LICENSE.netbeans

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
<#if licenseFirst??>
2+
${licenseFirst}
3+
</#if>
4+
${licensePrefix}Copyright (c) The openTCS Authors.
5+
${licensePrefix?replace(" +$", "", "r")}
6+
${licensePrefix}This program is free software and subject to the MIT license. (For details,
7+
${licensePrefix}see the licensing information (LICENSE.txt) you should have received with
8+
${licensePrefix}this copy of the software.)
9+
<#if licenseLast??>
10+
${licenseLast}
11+
</#if>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,210 @@
1+
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
2+
<xsl:output method="html" indent="yes"/>
3+
<xsl:decimal-format decimal-separator="." grouping-separator="," />
4+
5+
<xsl:key name="files" match="file" use="@name" />
6+
7+
<!-- Checkstyle XML Style Sheet by Rolf Wojtech <[email protected]> -->
8+
<!-- (based on checkstyle-noframe-sorted.xsl by Stephane Bailliez -->
9+
<!-- <[email protected]> and sf-patch 1721291 by Leo Liang) -->
10+
<!-- Changes: -->
11+
<!-- * Outputs seperate columns for error/warning/info -->
12+
<!-- * Sorts primarily by #error, secondarily by #warning, tertiary by #info -->
13+
<!-- * Compatible with windows path names (converts '\' to '/' for html anchor) -->
14+
<!-- -->
15+
<!-- Part of the Checkstyle distribution found at https://checkstyle.org -->
16+
<!-- Usage (generates checkstyle_report.html): -->
17+
<!-- <checkstyle failonviolation="false" config="${check.config}"> -->
18+
<!-- <fileset dir="${src.dir}" includes="**/*.java"/> -->
19+
<!-- <formatter type="xml" toFile="${doc.dir}/checkstyle_report.xml"/> -->
20+
<!-- </checkstyle> -->
21+
<!-- <style basedir="${doc.dir}" destdir="${doc.dir}" -->
22+
<!-- includes="checkstyle_report.xml" -->
23+
<!-- style="${doc.dir}/checkstyle-noframes-severity-sorted.xsl"/> -->
24+
25+
<xsl:template match="checkstyle">
26+
<html>
27+
<head>
28+
<style type="text/css">
29+
.bannercell {
30+
border: 0px;
31+
padding: 0px;
32+
}
33+
body {
34+
margin-left: 10;
35+
margin-right: 10;
36+
font:normal 80% arial,helvetica,sanserif;
37+
background-color:#FFFFFF;
38+
color:#000000;
39+
}
40+
.a td {
41+
background: #efefef;
42+
}
43+
.b td {
44+
background: #fff;
45+
}
46+
th, td {
47+
text-align: left;
48+
vertical-align: top;
49+
}
50+
th {
51+
font-weight:bold;
52+
background: #ccc;
53+
color: black;
54+
}
55+
table, th, td {
56+
font-size:100%;
57+
border: none
58+
}
59+
table.log tr td, tr th {
60+
61+
}
62+
h2 {
63+
font-weight:bold;
64+
font-size:140%;
65+
margin-bottom: 5;
66+
}
67+
h3 {
68+
font-size:100%;
69+
font-weight:bold;
70+
background: #525D76;
71+
color: white;
72+
text-decoration: none;
73+
padding: 5px;
74+
margin-right: 2px;
75+
margin-left: 2px;
76+
margin-bottom: 0;
77+
}
78+
</style>
79+
</head>
80+
<body>
81+
<a name="top"></a>
82+
<!-- jakarta logo -->
83+
<table border="0" cellpadding="0" cellspacing="0" width="100%">
84+
<tr>
85+
<td class="bannercell" rowspan="2">
86+
<!--a href="http://jakarta.apache.org/">
87+
<img src="http://jakarta.apache.org/images/jakarta-logo.gif" alt="http://jakarta.apache.org" align="left" border="0"/>
88+
</a-->
89+
</td>
90+
<td class="text-align:right"><h2>CheckStyle Audit</h2></td>
91+
</tr>
92+
<tr>
93+
<td class="text-align:right">Designed for use with <a href='https://checkstyle.org/'>CheckStyle</a> and <a href='http://jakarta.apache.org'>Ant</a>.</td>
94+
</tr>
95+
</table>
96+
<hr size="1"/>
97+
98+
<!-- Summary part -->
99+
<xsl:apply-templates select="." mode="summary"/>
100+
<hr size="1" width="100%" align="left"/>
101+
102+
<!-- Package List part -->
103+
<xsl:apply-templates select="." mode="filelist"/>
104+
<hr size="1" width="100%" align="left"/>
105+
106+
<!-- For each package create its part -->
107+
<xsl:apply-templates select="file[@name and generate-id(.) = generate-id(key('files', @name))]" />
108+
109+
<hr size="1" width="100%" align="left"/>
110+
111+
112+
</body>
113+
</html>
114+
</xsl:template>
115+
116+
117+
118+
<xsl:template match="checkstyle" mode="filelist">
119+
<h3>Files</h3>
120+
<table class="log" border="0" cellpadding="5" cellspacing="2" width="100%">
121+
<tr>
122+
<th>Name</th>
123+
<th>Errors</th>
124+
<th>Warnings</th>
125+
<th>Infos</th>
126+
</tr>
127+
<xsl:for-each select="file[@name and generate-id(.) = generate-id(key('files', @name))]">
128+
129+
<!-- Sort method 1: Primary by #error, secondary by #warning, tertiary by #info -->
130+
<xsl:sort data-type="number" order="descending" select="count(key('files', @name)/error[@severity='error'])"/>
131+
<xsl:sort data-type="number" order="descending" select="count(key('files', @name)/error[@severity='warning'])"/>
132+
<xsl:sort data-type="number" order="descending" select="count(key('files', @name)/error[@severity='info'])"/>
133+
134+
<!-- Sort method 1: Sum(#error+#info+#warning) (uncomment to use, comment method 1) -->
135+
<!--
136+
<xsl:sort data-type="number" order="descending" select="count(key('files', @name)/error)"/>
137+
-->
138+
139+
<xsl:variable name="errorCount" select="count(key('files', @name)/error[@severity='error'])"/>
140+
<xsl:variable name="warningCount" select="count(key('files', @name)/error[@severity='warning'])"/>
141+
<xsl:variable name="infoCount" select="count(key('files', @name)/error[@severity='info'])"/>
142+
143+
<tr>
144+
<xsl:call-template name="alternated-row"/>
145+
<td><a href="#f-{translate(@name,'\','/')}"><xsl:value-of select="@name"/></a></td>
146+
<td><xsl:value-of select="$errorCount"/></td>
147+
<td><xsl:value-of select="$warningCount"/></td>
148+
<td><xsl:value-of select="$infoCount"/></td>
149+
</tr>
150+
</xsl:for-each>
151+
</table>
152+
</xsl:template>
153+
154+
155+
<xsl:template match="file">
156+
<a name="f-{translate(@name,'\','/')}"></a>
157+
<h3>File <xsl:value-of select="@name"/></h3>
158+
159+
<table class="log" border="0" cellpadding="5" cellspacing="2" width="100%">
160+
<tr>
161+
<th>Severity</th>
162+
<th>Error Description</th>
163+
<th>Line</th>
164+
</tr>
165+
<xsl:for-each select="key('files', @name)/error">
166+
<xsl:sort data-type="number" order="ascending" select="@line"/>
167+
<tr>
168+
<xsl:call-template name="alternated-row"/>
169+
<td><xsl:value-of select="@severity"/></td>
170+
<td><xsl:value-of select="@message"/></td>
171+
<td><xsl:value-of select="@line"/></td>
172+
</tr>
173+
</xsl:for-each>
174+
</table>
175+
<a href="#top">Back to top</a>
176+
</xsl:template>
177+
178+
179+
<xsl:template match="checkstyle" mode="summary">
180+
<h3>Summary</h3>
181+
<xsl:variable name="fileCount" select="count(file[@name and generate-id(.) = generate-id(key('files', @name))])"/>
182+
<xsl:variable name="errorCount" select="count(file/error[@severity='error'])"/>
183+
<xsl:variable name="warningCount" select="count(file/error[@severity='warning'])"/>
184+
<xsl:variable name="infoCount" select="count(file/error[@severity='info'])"/>
185+
<table class="log" border="0" cellpadding="5" cellspacing="2" width="100%">
186+
<tr>
187+
<th>Files</th>
188+
<th>Errors</th>
189+
<th>Warnings</th>
190+
<th>Infos</th>
191+
</tr>
192+
<tr>
193+
<xsl:call-template name="alternated-row"/>
194+
<td><xsl:value-of select="$fileCount"/></td>
195+
<td><xsl:value-of select="$errorCount"/></td>
196+
<td><xsl:value-of select="$warningCount"/></td>
197+
<td><xsl:value-of select="$infoCount"/></td>
198+
</tr>
199+
</table>
200+
</xsl:template>
201+
202+
<xsl:template name="alternated-row">
203+
<xsl:attribute name="class">
204+
<xsl:if test="position() mod 2 = 1">a</xsl:if>
205+
<xsl:if test="position() mod 2 = 0">b</xsl:if>
206+
</xsl:attribute>
207+
</xsl:template>
208+
</xsl:stylesheet>
209+
210+

0 commit comments

Comments
 (0)