Commit aa30d084 authored by Stephan Kreutzer's avatar Stephan Kreutzer

change_history_concatenator_1 added.

parent 91d989fa
/* Copyright (C) 2016-2019 Stephan Kreutzer
*
* This file is part of change_history_concatenator_1, a submodule of the
* digital_publishing_workflow_tools package.
*
* change_history_concatenator_1 is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License version 3 or any later version,
* as published by the Free Software Foundation.
*
* change_history_concatenator_1 is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License 3 for more details.
*
* You should have received a copy of the GNU Affero General Public License 3
* along with change_history_concatenator_1. If not, see <http://www.gnu.org/licenses/>.
*/
/**
* @file $/change_history_concatenator/change_history_concatenator_1/InfoMessage.java
* @brief For normal messages during change_history_concatenator_1 concatenation.
* @author Stephan Kreutzer
* @since 2016-01-04
*/
import java.util.TimeZone;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
class InfoMessage
{
public InfoMessage(String id,
Exception exception,
String message,
String bundle,
Object ... arguments)
{
this.id = id;
this.exception = exception;
this.message = message;
this.bundle = bundle;
this.arguments = arguments;
TimeZone timeZone = TimeZone.getTimeZone("UTC");
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
dateFormat.setTimeZone(timeZone);
this.timestamp = dateFormat.format(new Date());
}
public String getId()
{
return this.id;
}
public Exception getException()
{
return this.exception;
}
public String getMessage()
{
return this.message;
}
public String getBundle()
{
return this.bundle;
}
public Object[] getArguments()
{
return this.arguments;
}
public String getTimestamp()
{
return this.timestamp;
}
protected String id;
protected Exception exception;
protected String message;
protected String bundle;
protected Object[] arguments;
protected String timestamp;
}
/* Copyright (C) 2015-2019 Stephan Kreutzer
*
* This file is part of change_history_concatenator_1, a submodule of the
* digital_publishing_workflow_tools package.
*
* change_history_concatenator_1 is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License version 3 or any later version,
* as published by the Free Software Foundation.
*
* change_history_concatenator_1 is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License 3 for more details.
*
* You should have received a copy of the GNU Affero General Public License 3
* along with change_history_concatenator_1. If not, see <http://www.gnu.org/licenses/>.
*/
/**
* @file $/change_history_concatenator/change_history_concatenator_1/ProgramTerminationException.java
* @brief Handles error reporting and program termination for change_history_concatenator_1.
* @author Stephan Kreutzer
* @since 2016-02-20
*/
import java.util.TimeZone;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
class ProgramTerminationException extends RuntimeException
{
public ProgramTerminationException(String id,
Exception cause,
String message,
String bundle,
Object ... arguments)
{
super(message, cause);
this.id = id;
this.bundle = bundle;
this.arguments = arguments;
this.normalTermination = false;
TimeZone timeZone = TimeZone.getTimeZone("UTC");
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
dateFormat.setTimeZone(timeZone);
this.timestamp = dateFormat.format(new Date());
}
public String getId()
{
return this.id;
}
public String getBundle()
{
return this.bundle;
}
public Object[] getArguments()
{
return this.arguments;
}
public String getTimestamp()
{
return this.timestamp;
}
public boolean isNormalTermination()
{
return this.normalTermination;
}
public void setNormalTermination(boolean normalTermination)
{
this.normalTermination = normalTermination;
}
protected String id;
protected String bundle;
protected Object[] arguments;
protected String timestamp;
protected boolean normalTermination;
}
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (C) 2017-2019 Stephan Kreutzer
This file is part of change_history_concatenator_1, a submodule of the
digital_publishing_workflow_tools package.
change_history_concatenator_1 is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License version 3 or any later version,
as published by the Free Software Foundation.
change_history_concatenator_1 is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License 3 for more details.
You should have received a copy of the GNU Affero General Public License 3
along with change_history_concatenator_1. If not, see <http://www.gnu.org/licenses/>.
-->
<change-history-concatenator-1-job>
<input-files>
<input-file path="./input_1.xml"/>
<input-file path="./input_2.xml"/>
</input-files>
<output-file path="./output.xml" processing-instruction-data="encoding=&quot;UTF-8&quot;"/>
</change-history-concatenator-1-job>
# Copyright (C) 2017-2019 Stephan Kreutzer
#
# This file is part of change_history_concatenator_1, a submodule of the
# digital_publishing_workflow_tools package.
#
# change_history_concatenator_1 is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License version 3 or any later version,
# as published by the Free Software Foundation.
#
# change_history_concatenator_1 is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License 3 for more details.
#
# You should have received a copy of the GNU Affero General Public License 3
# along with change_history_concatenator_1. If not, see <http://www.gnu.org/licenses/>.
messageArgumentsMissingUsage = Usage:
messageParameterList = job-file result-info-file
messageResultInfoFileCantGetCanonicalPath = Can''t get canonical path of result information file "{0}".
messageResultInfoPathIsntAFile = Result information path "{0}" isn''t a file.
messageResultInfoFileIsntWritable = Result information file "{0}" isn''t writable.
messageJobFileCantGetCanonicalPath = Can''t get canonical path of the job file "{0}".
messageJobFileDoesntExist = Job file "{0}" doesn''t exist.
messageJobPathIsntAFile = Job path "{0}" exists, but isn''t a file.
messageJobFileIsntReadable = Job file "{0}" isn''t readable.
messageCallDetails = Called with job file "{0}" and result information file "{1}".
messageJobFileEntryIsMissingAnAttribute = Element "{1}" in job file "{0}" is missing its "{2}" attribute.
messageJobFileElementConfiguredMoreThanOnce = Element "{1}" configured more than once in job file "{0}".
messageInputFileCantGetCanonicalPath = Can''t get canonical path of the input file "{0}" as specified in job file "{1}".
messageInputFileDoesntExist = Input file "{0}" as specified in job file "{1}" doesn''t exist.
messageInputPathIsntAFile = Input path "{0}" as specified in job file "{1}" exists, but isn''t a file.
messageInputFileIsntReadable = Input file "{0}" as specified in job file "{1}" isn''t readable.
messageOutputFileCantGetCanonicalPath = Can''t get canonical path of the output file "{0}" as specified in job file "{1}".
messageOutputPathIsntAFile = Output path "{0}" as specified in job file "{1}" exists, but isn''t a file.
messageOutputFileIsntWritable = Output file "{0}" as specified in job file "{1}" does exist, but isn''t writable.
messageJobFileErrorWhileReading = An error occurred while reading job file "{0}".
messageJobFileInputFilesNotConfigured = There are no input files configured in job file "{0}".
messageJobFileInputFilesNotTwo = The number of input files in the job file "{0}" isn''t 2.
messageJobFileOutputFileIsntConfigured = There is no output file configured in job file "{0}".
messageInputFileErrorWhileReading = An error occurred while reading input file "{0}".
messageOutputFileErrorWhileWriting = An error occurred while writing output file "{0}".
# Copyright (C) 2017-2019 Stephan Kreutzer
#
# This file is part of change_history_concatenator_1, a submodule of the
# digital_publishing_workflow_tools package.
#
# change_history_concatenator_1 is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License version 3 or any later version,
# as published by the Free Software Foundation.
#
# change_history_concatenator_1 is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License 3 for more details.
#
# You should have received a copy of the GNU Affero General Public License 3
# along with change_history_concatenator_1. If not, see <http://www.gnu.org/licenses/>.
messageArgumentsMissingUsage = Verwendung:
messageParameterList = job-datei ergebnis-info-datei
messageResultInfoFileCantGetCanonicalPath = Kann keinen kanonischen Pfad für die Ergebnisinformationsdatei "{0}" ermitteln.
messageResultInfoPathIsntAFile = Ergebnisinformationspfad "{0}" existiert bereits, referenziert aber keine Datei.
messageResultInfoFileIsntWritable = Ergebnisinformationsdatei "{0}" ist nicht schreibbar.
messageJobFileCantGetCanonicalPath = Kann keinen kanonischen Pfad für die Jobdatei "{0}" ermitteln.
messageJobFileDoesntExist = Jobdatei "{0}" existiert nicht.
messageJobPathIsntAFile = Jobpfad "{0}" ist keine Datei.
messageJobFileIsntReadable = Jobdatei "{0}" ist nicht lesbar.
messageCallDetails = Aufgerufen mit Jobdatei "{0}" und Ergebnisinformationsdatei "{1}".
messageJobFileEntryIsMissingAnAttribute = Element "{1}" in Jobdatei "{0}" fehlt das "{2}"-Attribut.
messageJobFileElementConfiguredMoreThanOnce = Element "{1}" mehr als einmal konfiguriert in Jobdatei "{0}".
messageInputFileCantGetCanonicalPath = Kann keinen kanonischen Pfad für die Eingabedatei "{0}" wie in Jobdatei "{1}" hinterlegt ermitteln.
messageInputFileDoesntExist = Die Eingabe-Datei "{0}" laut Job-Datei "{1}" existiert nicht.
messageInputPathIsntAFile = Der Eingabe-Pfad "{0}" laut Job-Datei "{1}" referenziert keine Datei.
messageInputFileIsntReadable = Die Eingabe-Datei "{0}" laut Job-Datei "{1}" ist nicht lesbar.
messageOutputFileCantGetCanonicalPath = Kann keinen kanonischen Pfad für die Ausgabedatei "{0}" wie in Jobdatei "{1}" hinterlegt ermitteln.
messageOutputPathIsntAFile = Ausgabepfad "{0}" wie in Jobdatei "{1}" hinterlegt existiert, ist aber keine Datei.
messageOutputFileIsntWritable = Ausgabedatei "{0}" wie in Jobdatei "{1}" hinterlegt existiert, ist aber nicht überschreibbar.
messageJobFileErrorWhileReading = Während die Jobdatei "{0}" ausgelesen wurde, ist ein Fehler aufgetreten.
messageJobFileInputFilesNotConfigured = Keine Eingabedateien in Jobdatei "{0}" konfiguriert.
messageJobFileInputFilesNotTwo = Die Anzahl der Eingabedateien in der Jobdatei "{0}" ist nicht 2.
messageJobFileOutputFileIsntConfigured = Keine Ausgabedatei in Jobdatei "{0}" konfiguriert.
messageInputFileErrorWhileReading = Während die Eingabedatei "{0}" ausgelesen wurde, ist ein Fehler aufgetreten.
messageOutputFileErrorWhileWriting = Beim Schreiben der Ausgabedatei "{0}" ist ein Fehler aufgetreten.
# Copyright (C) 2017-2019 Stephan Kreutzer
#
# This file is part of change_history_concatenator_1, a submodule of the
# digital_publishing_workflow_tools package.
#
# change_history_concatenator_1 is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License version 3 or any later version,
# as published by the Free Software Foundation.
#
# change_history_concatenator_1 is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License 3 for more details.
#
# You should have received a copy of the GNU Affero General Public License 3
# along with change_history_concatenator_1. If not, see <http://www.gnu.org/licenses/>.
.PHONY: all change_history_concatenator_1 clean
all: change_history_concatenator_1
change_history_concatenator_1: change_history_concatenator_1.class
InfoMessage.class: InfoMessage.java
javac -encoding UTF-8 InfoMessage.java
ProgramTerminationException.class: ProgramTerminationException.java
javac -encoding UTF-8 ProgramTerminationException.java
change_history_concatenator_1.class: change_history_concatenator_1.java InfoMessage.class ProgramTerminationException.class
javac -encoding UTF-8 change_history_concatenator_1.java
clean:
rm -f change_history_concatenator_1.class
rm -f ProgramTerminationException.class
rm -f InfoMessage.class
# Copyright (C) 2017-2019 Stephan Kreutzer
#
# This file is part of digital_publishing_workflow_tools.
#
# digital_publishing_workflow_tools is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License version 3 or any later version,
# as published by the Free Software Foundation.
#
# digital_publishing_workflow_tools is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License 3 for more details.
#
# You should have received a copy of the GNU Affero General Public License 3
# along with digital_publishing_workflow_tools. If not, see <http://www.gnu.org/licenses/>.
directories = ./change_history_concatenator_1
.PHONY: all $(directories)
all: $(directories)
$(directories):
$(MAKE) --directory=$@
......@@ -16,7 +16,7 @@
directories = ./change_instructions_concatenator ./change_instructions_executor ./change_instructions_optimizer ./edl_to_xml ./gui ./workflows
directories = ./change_history_concatenator ./change_instructions_concatenator ./change_instructions_executor ./change_instructions_optimizer ./edl_to_xml ./gui ./workflows
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment