Compare commits
6 commits
Author | SHA1 | Date | |
---|---|---|---|
52645283be | |||
95feb60b49 | |||
4018f2cc15 | |||
5aaf1bf9f4 | |||
2410c1fa92 | |||
9cfa1a36f3 |
58 changed files with 146 additions and 117 deletions
25
.classpath
25
.classpath
|
@ -2,23 +2,26 @@
|
||||||
<classpath>
|
<classpath>
|
||||||
<classpathentry kind="src" path="src"/>
|
<classpathentry kind="src" path="src"/>
|
||||||
<classpathentry kind="src" path="test"/>
|
<classpathentry kind="src" path="test"/>
|
||||||
<classpathentry kind="lib" path="lib/commons-codec-1.8.jar" sourcepath="lib/commons-codec-1.8-sources.jar"/>
|
|
||||||
<classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.module.container"/>
|
<classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.module.container"/>
|
||||||
<classpathentry kind="lib" path="lib/mysql-jdbc-5.0.8.jar"/>
|
|
||||||
<classpathentry kind="lib" path="lib/Logs/log4j-1.2.17.jar" sourcepath="lib/Logs/log4j-1.2.17-source.zip"/>
|
|
||||||
<classpathentry kind="lib" path="lib/UnitTesting/hamcrest-core-1.3.jar" sourcepath="lib/UnitTesting/hamcrest-core-1.3-sources.jar"/>
|
<classpathentry kind="lib" path="lib/UnitTesting/hamcrest-core-1.3.jar" sourcepath="lib/UnitTesting/hamcrest-core-1.3-sources.jar"/>
|
||||||
<classpathentry kind="lib" path="lib/hsqldb-2.3.0.jar"/>
|
|
||||||
<classpathentry kind="lib" path="lib/Logs/slf4j-api-1.7.25.jar" sourcepath="lib/Logs/slf4j-api-1.7.25-sources.jar"/>
|
|
||||||
<classpathentry kind="lib" path="lib/Logs/slf4j-log4j12-1.7.25.jar" sourcepath="lib/Logs/slf4j-log4j12-1.7.25-sources.jar"/>
|
|
||||||
<classpathentry kind="lib" path="lib/UnitTesting/junit-4.12.jar" sourcepath="lib/UnitTesting/junit-4.12-sources.jar"/>
|
<classpathentry kind="lib" path="lib/UnitTesting/junit-4.12.jar" sourcepath="lib/UnitTesting/junit-4.12-sources.jar"/>
|
||||||
<classpathentry kind="lib" path="lib/commons-io-2.6.jar" sourcepath="lib/commons-io-2.6-sources.jar"/>
|
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-17">
|
||||||
<classpathentry kind="lib" path="lib/commons-lang3-3.7.jar" sourcepath="lib/commons-lang3-3.7-sources.jar"/>
|
|
||||||
<classpathentry kind="lib" path="lib/devinsy-strings-0.8.2.jar" sourcepath="lib/devinsy-strings-0.8.2-sources.zip"/>
|
|
||||||
<classpathentry kind="lib" path="lib/devinsy-xml-0.8.2.jar" sourcepath="lib/devinsy-xml-0.8.2-sources.zip"/>
|
|
||||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11">
|
|
||||||
<attributes>
|
<attributes>
|
||||||
|
<attribute name="module" value="true"/>
|
||||||
<attribute name="owner.project.facets" value="java"/>
|
<attribute name="owner.project.facets" value="java"/>
|
||||||
</attributes>
|
</attributes>
|
||||||
</classpathentry>
|
</classpathentry>
|
||||||
|
<classpathentry kind="lib" path="lib/commons-io-2.16.1.jar" sourcepath="lib/commons-io-2.16.1-sources.jar"/>
|
||||||
|
<classpathentry kind="lib" path="lib/commons-lang3-3.13.0.jar" sourcepath="lib/commons-lang3-3.13.0-sources.jar"/>
|
||||||
|
<classpathentry kind="lib" path="lib/devinsy-strings-0.17.0.jar" sourcepath="lib/devinsy-strings-0.17.0-sources.zip"/>
|
||||||
|
<classpathentry kind="lib" path="lib/devinsy-xml-0.17.0.jar" sourcepath="lib/devinsy-xml-0.17.0-sources.zip"/>
|
||||||
|
<classpathentry kind="lib" path="lib/commons-codec-1.17.1.jar" sourcepath="lib/commons-codec-1.17.1-sources.jar"/>
|
||||||
|
<classpathentry kind="lib" path="lib/mariadb-java-client-3.4.1.jar"/>
|
||||||
|
<classpathentry kind="lib" path="lib/hsqldb-2.7.3.jar"/>
|
||||||
|
<classpathentry kind="lib" path="lib/Logs/log4j-api-2.23.1.jar"/>
|
||||||
|
<classpathentry kind="lib" path="lib/Logs/log4j-core-2.23.1.jar"/>
|
||||||
|
<classpathentry kind="lib" path="lib/Logs/log4j-slf4j2-impl-2.23.1.jar"/>
|
||||||
|
<classpathentry kind="lib" path="lib/Logs/slf4j-api-2.0.16.jar"/>
|
||||||
|
<classpathentry kind="lib" path="lib/commons-text-1.12.0.jar" sourcepath="lib/commons-text-1.12.0-sources.jar"/>
|
||||||
<classpathentry kind="output" path="bin"/>
|
<classpathentry kind="output" path="bin"/>
|
||||||
</classpath>
|
</classpath>
|
||||||
|
|
2
.settings/org.eclipse.core.resources.prefs
Normal file
2
.settings/org.eclipse.core.resources.prefs
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
eclipse.preferences.version=1
|
||||||
|
encoding/<project>=UTF-8
|
|
@ -1,8 +1,8 @@
|
||||||
eclipse.preferences.version=1
|
eclipse.preferences.version=1
|
||||||
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
|
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
|
||||||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=11
|
org.eclipse.jdt.core.compiler.codegen.targetPlatform=17
|
||||||
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
|
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
|
||||||
org.eclipse.jdt.core.compiler.compliance=11
|
org.eclipse.jdt.core.compiler.compliance=17
|
||||||
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
|
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
|
||||||
org.eclipse.jdt.core.compiler.debug.localVariable=generate
|
org.eclipse.jdt.core.compiler.debug.localVariable=generate
|
||||||
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
|
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
|
||||||
|
@ -11,7 +11,7 @@ org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
|
||||||
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
|
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
|
||||||
org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
|
org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
|
||||||
org.eclipse.jdt.core.compiler.release=enabled
|
org.eclipse.jdt.core.compiler.release=enabled
|
||||||
org.eclipse.jdt.core.compiler.source=11
|
org.eclipse.jdt.core.compiler.source=17
|
||||||
org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
|
org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
|
||||||
org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
|
org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
|
||||||
org.eclipse.jdt.core.formatter.alignment_for_additive_operator=16
|
org.eclipse.jdt.core.formatter.alignment_for_additive_operator=16
|
||||||
|
|
|
@ -3,5 +3,5 @@
|
||||||
<fixed facet="java"/>
|
<fixed facet="java"/>
|
||||||
<fixed facet="jst.utility"/>
|
<fixed facet="jst.utility"/>
|
||||||
<installed facet="jst.utility" version="1.0"/>
|
<installed facet="jst.utility" version="1.0"/>
|
||||||
<installed facet="java" version="11"/>
|
<installed facet="java" version="17"/>
|
||||||
</faceted-project>
|
</faceted-project>
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
#Build Number for ANT. Do not edit!
|
#Build Number for ANT. Do not edit!
|
||||||
#Wed Feb 28 19:03:09 CET 2018
|
#Fri Aug 23 12:19:51 CEST 2024
|
||||||
build.number=0
|
build.number=1
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
product.name=sikevadb
|
product.name=sikevadb
|
||||||
product.revision.major=1
|
product.revision.major=1
|
||||||
product.revision.minor=8
|
product.revision.minor=17
|
||||||
|
|
Binary file not shown.
Binary file not shown.
BIN
lib/Logs/log4j-api-2.23.1-sources.jar
Normal file
BIN
lib/Logs/log4j-api-2.23.1-sources.jar
Normal file
Binary file not shown.
BIN
lib/Logs/log4j-api-2.23.1.jar
Normal file
BIN
lib/Logs/log4j-api-2.23.1.jar
Normal file
Binary file not shown.
BIN
lib/Logs/log4j-core-2.23.1-sources.jar
Normal file
BIN
lib/Logs/log4j-core-2.23.1-sources.jar
Normal file
Binary file not shown.
BIN
lib/Logs/log4j-core-2.23.1.jar
Normal file
BIN
lib/Logs/log4j-core-2.23.1.jar
Normal file
Binary file not shown.
BIN
lib/Logs/log4j-slf4j2-impl-2.23.1.jar
Normal file
BIN
lib/Logs/log4j-slf4j2-impl-2.23.1.jar
Normal file
Binary file not shown.
BIN
lib/Logs/log4j-slf4j2-impl-2.32.1-sources.jar
Normal file
BIN
lib/Logs/log4j-slf4j2-impl-2.32.1-sources.jar
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
lib/Logs/slf4j-api-2.0.16-sources.jar
Normal file
BIN
lib/Logs/slf4j-api-2.0.16-sources.jar
Normal file
Binary file not shown.
BIN
lib/Logs/slf4j-api-2.0.16.jar
Normal file
BIN
lib/Logs/slf4j-api-2.0.16.jar
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
lib/commons-codec-1.17.1-sources.jar
Normal file
BIN
lib/commons-codec-1.17.1-sources.jar
Normal file
Binary file not shown.
BIN
lib/commons-codec-1.17.1.jar
Normal file
BIN
lib/commons-codec-1.17.1.jar
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
lib/commons-io-2.16.1-sources.jar
Normal file
BIN
lib/commons-io-2.16.1-sources.jar
Normal file
Binary file not shown.
BIN
lib/commons-io-2.16.1.jar
Normal file
BIN
lib/commons-io-2.16.1.jar
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
lib/commons-lang3-3.13.0-sources.jar
Normal file
BIN
lib/commons-lang3-3.13.0-sources.jar
Normal file
Binary file not shown.
BIN
lib/commons-lang3-3.13.0.jar
Normal file
BIN
lib/commons-lang3-3.13.0.jar
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
lib/commons-text-1.12.0-sources.jar
Normal file
BIN
lib/commons-text-1.12.0-sources.jar
Normal file
Binary file not shown.
BIN
lib/commons-text-1.12.0.jar
Normal file
BIN
lib/commons-text-1.12.0.jar
Normal file
Binary file not shown.
BIN
lib/devinsy-strings-0.17.0-sources.zip
Normal file
BIN
lib/devinsy-strings-0.17.0-sources.zip
Normal file
Binary file not shown.
BIN
lib/devinsy-strings-0.17.0.jar
Normal file
BIN
lib/devinsy-strings-0.17.0.jar
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
lib/devinsy-xml-0.17.0.jar
Normal file
BIN
lib/devinsy-xml-0.17.0.jar
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
lib/hsqldb-2.7.3.jar
Normal file
BIN
lib/hsqldb-2.7.3.jar
Normal file
Binary file not shown.
BIN
lib/mariadb-java-client-3.4.1.jar
Normal file
BIN
lib/mariadb-java-client-3.4.1.jar
Normal file
Binary file not shown.
Binary file not shown.
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2013-2017 Christian Pierre MOMON <christian.momon@devinsy.fr>
|
* Copyright (C) 2013-2024 Christian Pierre MOMON <christian.momon@devinsy.fr>
|
||||||
*
|
*
|
||||||
* This file is part of SikevaDB, simple key value database.
|
* This file is part of SikevaDB, simple key value database.
|
||||||
*
|
*
|
||||||
|
@ -21,8 +21,8 @@ package fr.devinsy.sikevadb;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
|
||||||
import org.apache.commons.lang3.ArrayUtils;
|
import org.apache.commons.lang3.ArrayUtils;
|
||||||
import org.apache.log4j.BasicConfigurator;
|
import org.apache.logging.log4j.core.config.Configurator;
|
||||||
import org.apache.log4j.PropertyConfigurator;
|
import org.apache.logging.log4j.core.config.DefaultConfiguration;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
|
@ -55,13 +55,13 @@ public final class SikevaDBLauncher
|
||||||
File loggerConfig = new File("log4j.properties");
|
File loggerConfig = new File("log4j.properties");
|
||||||
if (loggerConfig.exists())
|
if (loggerConfig.exists())
|
||||||
{
|
{
|
||||||
PropertyConfigurator.configure(loggerConfig.getAbsolutePath());
|
Configurator.initialize(null, loggerConfig.getAbsolutePath());
|
||||||
logger.info("Dedicated log configuration done.");
|
logger.info("Dedicated log configuration done.");
|
||||||
logger.info("Configuration file was found in [{}].", loggerConfig.getAbsoluteFile());
|
logger.info("Configuration file was found in [{}].", loggerConfig.getAbsoluteFile());
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
BasicConfigurator.configure();
|
Configurator.initialize(new DefaultConfiguration());
|
||||||
logger.info("Basic log configuration done.");
|
logger.info("Basic log configuration done.");
|
||||||
logger.info("Configuration file was not found in [{}].", loggerConfig.getAbsoluteFile());
|
logger.info("Configuration file was not found in [{}].", loggerConfig.getAbsoluteFile());
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2013-2018 Christian Pierre MOMON <christian.momon@devinsy.fr>
|
* Copyright (C) 2013-2024 Christian Pierre MOMON <christian.momon@devinsy.fr>
|
||||||
*
|
*
|
||||||
* This file is part of SikevaDB, simple key value database.
|
* This file is part of SikevaDB, simple key value database.
|
||||||
*
|
*
|
||||||
|
@ -22,8 +22,8 @@ package fr.devinsy.sikevadb.cli;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.apache.log4j.BasicConfigurator;
|
import org.apache.logging.log4j.core.config.Configurator;
|
||||||
import org.apache.log4j.PropertyConfigurator;
|
import org.apache.logging.log4j.core.config.DefaultConfiguration;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
|
@ -76,13 +76,13 @@ public final class SikevaDBCLI
|
||||||
File loggerConfig = new File("log4j.properties");
|
File loggerConfig = new File("log4j.properties");
|
||||||
if (loggerConfig.exists())
|
if (loggerConfig.exists())
|
||||||
{
|
{
|
||||||
PropertyConfigurator.configure(loggerConfig.getAbsolutePath());
|
Configurator.initialize(null, loggerConfig.getAbsolutePath());
|
||||||
logger.info("Dedicated log configuration done.");
|
logger.info("Dedicated log configuration done.");
|
||||||
logger.info("Configuration file was found in [{}].", loggerConfig.getAbsoluteFile());
|
logger.info("Configuration file was found in [{}].", loggerConfig.getAbsoluteFile());
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
BasicConfigurator.configure();
|
Configurator.initialize(new DefaultConfiguration());
|
||||||
logger.info("Basic log configuration done.");
|
logger.info("Basic log configuration done.");
|
||||||
logger.info("Configuration file was not found in [{}].", loggerConfig.getAbsoluteFile());
|
logger.info("Configuration file was not found in [{}].", loggerConfig.getAbsoluteFile());
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2013-2017 Christian Pierre MOMON <christian.momon@devinsy.fr>
|
* Copyright (C) 2013-2024 Christian Pierre MOMON <christian.momon@devinsy.fr>
|
||||||
*
|
*
|
||||||
* This file is part of SikevaDB, simple key value database.
|
* This file is part of SikevaDB, simple key value database.
|
||||||
*
|
*
|
||||||
|
@ -20,8 +20,6 @@ package fr.devinsy.sikevadb.core;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The Interface Archiver.
|
* The Interface Archiver.
|
||||||
*
|
|
||||||
* @author Christian Pierre MOMON
|
|
||||||
*/
|
*/
|
||||||
public interface Archiver
|
public interface Archiver
|
||||||
{
|
{
|
||||||
|
@ -31,17 +29,50 @@ public interface Archiver
|
||||||
SUSPENDED
|
SUSPENDED
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Activate.
|
||||||
|
*/
|
||||||
void activate();
|
void activate();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Archive.
|
||||||
|
*
|
||||||
|
* @param element
|
||||||
|
* the element
|
||||||
|
* @throws SikevaDBException
|
||||||
|
* the sikeva DB exception
|
||||||
|
*/
|
||||||
void archive(Element element) throws SikevaDBException;
|
void archive(Element element) throws SikevaDBException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Clear.
|
||||||
|
*
|
||||||
|
* @throws SikevaDBException
|
||||||
|
* the sikeva DB exception
|
||||||
|
*/
|
||||||
void clear() throws SikevaDBException;
|
void clear() throws SikevaDBException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Close.
|
||||||
|
*/
|
||||||
void close();
|
void close();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Checks if is activated.
|
||||||
|
*
|
||||||
|
* @return true, if is activated
|
||||||
|
*/
|
||||||
boolean isActivated();
|
boolean isActivated();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Checks if is suspended.
|
||||||
|
*
|
||||||
|
* @return true, if is suspended
|
||||||
|
*/
|
||||||
boolean isSuspended();
|
boolean isSuspended();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Suspend.
|
||||||
|
*/
|
||||||
void suspend();
|
void suspend();
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2018 Christian Pierre MOMON <christian.momon@devinsy.fr>
|
* Copyright (C) 2018-2024 Christian Pierre MOMON <christian.momon@devinsy.fr>
|
||||||
*
|
*
|
||||||
* This file is part of SikevaDB, simple key value database.
|
* This file is part of SikevaDB, simple key value database.
|
||||||
*
|
*
|
||||||
|
@ -19,15 +19,14 @@
|
||||||
package fr.devinsy.sikevadb.core;
|
package fr.devinsy.sikevadb.core;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
* The Class ClosedDatabaseException.
|
||||||
* @author Christian Pierre MOMON (christian.momon@devinsy.fr)
|
|
||||||
*/
|
*/
|
||||||
public class ClosedDatabaseException extends SikevaDBException
|
public class ClosedDatabaseException extends SikevaDBException
|
||||||
{
|
{
|
||||||
private static final long serialVersionUID = 8364599416669077052L;
|
private static final long serialVersionUID = 8364599416669077052L;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
* Instantiates a new closed database exception.
|
||||||
*/
|
*/
|
||||||
public ClosedDatabaseException()
|
public ClosedDatabaseException()
|
||||||
{
|
{
|
||||||
|
@ -35,8 +34,10 @@ public class ClosedDatabaseException extends SikevaDBException
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* Instantiates a new closed database exception.
|
||||||
*
|
*
|
||||||
* @param message
|
* @param message
|
||||||
|
* the message
|
||||||
*/
|
*/
|
||||||
public ClosedDatabaseException(final String message)
|
public ClosedDatabaseException(final String message)
|
||||||
{
|
{
|
||||||
|
@ -44,9 +45,12 @@ public class ClosedDatabaseException extends SikevaDBException
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* Instantiates a new closed database exception.
|
||||||
*
|
*
|
||||||
* @param message
|
* @param message
|
||||||
|
* the message
|
||||||
* @param cause
|
* @param cause
|
||||||
|
* the cause
|
||||||
*/
|
*/
|
||||||
public ClosedDatabaseException(final String message, final Throwable cause)
|
public ClosedDatabaseException(final String message, final Throwable cause)
|
||||||
{
|
{
|
||||||
|
@ -54,8 +58,10 @@ public class ClosedDatabaseException extends SikevaDBException
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* Instantiates a new closed database exception.
|
||||||
*
|
*
|
||||||
* @param cause
|
* @param cause
|
||||||
|
* the cause
|
||||||
*/
|
*/
|
||||||
public ClosedDatabaseException(final Throwable cause)
|
public ClosedDatabaseException(final Throwable cause)
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2018 Christian Pierre MOMON <christian.momon@devinsy.fr>
|
* Copyright (C) 2018-2024 Christian Pierre MOMON <christian.momon@devinsy.fr>
|
||||||
*
|
*
|
||||||
* This file is part of SikevaDB, simple key value database.
|
* This file is part of SikevaDB, simple key value database.
|
||||||
*
|
*
|
||||||
|
@ -19,15 +19,14 @@
|
||||||
package fr.devinsy.sikevadb.core;
|
package fr.devinsy.sikevadb.core;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
* The Class OpenedDatabaseException.
|
||||||
* @author Christian Pierre MOMON (christian.momon@devinsy.fr)
|
|
||||||
*/
|
*/
|
||||||
public class OpenedDatabaseException extends SikevaDBException
|
public class OpenedDatabaseException extends SikevaDBException
|
||||||
{
|
{
|
||||||
private static final long serialVersionUID = 8364599416669077052L;
|
private static final long serialVersionUID = 8364599416669077052L;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
* Instantiates a new opened database exception.
|
||||||
*/
|
*/
|
||||||
public OpenedDatabaseException()
|
public OpenedDatabaseException()
|
||||||
{
|
{
|
||||||
|
@ -35,8 +34,10 @@ public class OpenedDatabaseException extends SikevaDBException
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* Instantiates a new opened database exception.
|
||||||
*
|
*
|
||||||
* @param message
|
* @param message
|
||||||
|
* the message
|
||||||
*/
|
*/
|
||||||
public OpenedDatabaseException(final String message)
|
public OpenedDatabaseException(final String message)
|
||||||
{
|
{
|
||||||
|
@ -44,9 +45,12 @@ public class OpenedDatabaseException extends SikevaDBException
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* Instantiates a new opened database exception.
|
||||||
*
|
*
|
||||||
* @param message
|
* @param message
|
||||||
|
* the message
|
||||||
* @param cause
|
* @param cause
|
||||||
|
* the cause
|
||||||
*/
|
*/
|
||||||
public OpenedDatabaseException(final String message, final Throwable cause)
|
public OpenedDatabaseException(final String message, final Throwable cause)
|
||||||
{
|
{
|
||||||
|
@ -54,8 +58,10 @@ public class OpenedDatabaseException extends SikevaDBException
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* Instantiates a new opened database exception.
|
||||||
*
|
*
|
||||||
* @param cause
|
* @param cause
|
||||||
|
* the cause
|
||||||
*/
|
*/
|
||||||
public OpenedDatabaseException(final Throwable cause)
|
public OpenedDatabaseException(final Throwable cause)
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2013-2018 Christian Pierre MOMON <christian.momon@devinsy.fr>
|
* Copyright (C) 2013-2024 Christian Pierre MOMON <christian.momon@devinsy.fr>
|
||||||
*
|
*
|
||||||
* This file is part of SikevaDB, simple key value database.
|
* This file is part of SikevaDB, simple key value database.
|
||||||
*
|
*
|
||||||
|
@ -284,18 +284,28 @@ public interface SikevaDB
|
||||||
public String getValue(String key, String subkey) throws SikevaDBException;
|
public String getValue(String key, String subkey) throws SikevaDBException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets the values of a key.
|
* Gets the values.
|
||||||
*
|
*
|
||||||
* @param key
|
* @param key
|
||||||
* the key
|
* the key
|
||||||
* @return the values
|
* @return the values
|
||||||
* @throws SikevaDBException
|
* @throws SikevaDBException
|
||||||
* the SikevaDB exception
|
* the sikeva DB exception
|
||||||
*/
|
*/
|
||||||
public StringList getValues(String key) throws SikevaDBException;
|
public StringList getValues(String key) throws SikevaDBException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Checks if is archive activated.
|
||||||
|
*
|
||||||
|
* @return true, if is archive activated
|
||||||
|
*/
|
||||||
boolean isArchiveActivated();
|
boolean isArchiveActivated();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Checks if is archive suspended.
|
||||||
|
*
|
||||||
|
* @return true, if is archive suspended
|
||||||
|
*/
|
||||||
boolean isArchiveSuspended();
|
boolean isArchiveSuspended();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2013-2018 Christian Pierre MOMON <christian.momon@devinsy.fr>
|
* Copyright (C) 2013-2024 Christian Pierre MOMON <christian.momon@devinsy.fr>
|
||||||
*
|
*
|
||||||
* This file is part of SikevaDB, simple key value database.
|
* This file is part of SikevaDB, simple key value database.
|
||||||
*
|
*
|
||||||
|
@ -41,22 +41,20 @@ import fr.devinsy.xml.XMLZipWriter;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The Class XMLSikevaDB represents a XML persister.
|
* The Class XMLSikevaDB represents a XML persister.
|
||||||
*
|
|
||||||
* @author Christian Pierre MOMON (christian.momon@devinsy.fr)
|
|
||||||
*/
|
*/
|
||||||
public class XMLSikevaDB
|
public class XMLSikevaDB
|
||||||
{
|
{
|
||||||
private static final Logger logger = LoggerFactory.getLogger(XMLSikevaDB.class);
|
private static final Logger logger = LoggerFactory.getLogger(XMLSikevaDB.class);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Export in XML a database in a file.
|
* Export.
|
||||||
*
|
*
|
||||||
* @param out
|
* @param out
|
||||||
* the out
|
* the out
|
||||||
* @param source
|
* @param source
|
||||||
* the source
|
* the source
|
||||||
* @throws SikevaDBException
|
* @throws SikevaDBException
|
||||||
* the SikevaDB exception
|
* the sikeva DB exception
|
||||||
* @throws FileNotFoundException
|
* @throws FileNotFoundException
|
||||||
* the file not found exception
|
* the file not found exception
|
||||||
*/
|
*/
|
||||||
|
@ -152,9 +150,6 @@ public class XMLSikevaDB
|
||||||
* the database
|
* the database
|
||||||
* @param file
|
* @param file
|
||||||
* the file
|
* the file
|
||||||
*
|
|
||||||
* @throws Exception
|
|
||||||
* the exception
|
|
||||||
*/
|
*/
|
||||||
public static void importData(final SikevaDB database, final File file)
|
public static void importData(final SikevaDB database, final File file)
|
||||||
{
|
{
|
||||||
|
@ -178,6 +173,7 @@ public class XMLSikevaDB
|
||||||
* the in
|
* the in
|
||||||
* @return the element
|
* @return the element
|
||||||
* @throws SikevaDBException
|
* @throws SikevaDBException
|
||||||
|
* the sikeva DB exception
|
||||||
*/
|
*/
|
||||||
public static Element readElement(final XMLReader in) throws SikevaDBException
|
public static Element readElement(final XMLReader in) throws SikevaDBException
|
||||||
{
|
{
|
||||||
|
@ -248,12 +244,8 @@ public class XMLSikevaDB
|
||||||
* the target
|
* the target
|
||||||
* @param in
|
* @param in
|
||||||
* the in
|
* the in
|
||||||
* @throws XMLBadFormatException
|
|
||||||
* @throws XMLStreamException
|
|
||||||
* @throws SikevaDBException
|
* @throws SikevaDBException
|
||||||
*
|
* the sikeva DB exception
|
||||||
* @throws Exception
|
|
||||||
* the exception
|
|
||||||
*/
|
*/
|
||||||
public static void readElements(final SikevaDB target, final XMLReader in) throws SikevaDBException
|
public static void readElements(final SikevaDB target, final XMLReader in) throws SikevaDBException
|
||||||
{
|
{
|
||||||
|
@ -342,17 +334,15 @@ public class XMLSikevaDB
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Write in an XML writer the elements of a database, sorting by keys and sub
|
* Write in an XML writer the elements of a database, sorting by keys and
|
||||||
* keys.
|
* sub keys.
|
||||||
*
|
*
|
||||||
* @param out
|
* @param out
|
||||||
* the out
|
* the out
|
||||||
* @param source
|
* @param source
|
||||||
* the source
|
* the source
|
||||||
* @throws SikevaDBException
|
* @throws SikevaDBException
|
||||||
*
|
* the sikeva DB exception
|
||||||
* @throws Exception
|
|
||||||
* the exception
|
|
||||||
*/
|
*/
|
||||||
public static void write(final XMLWriter out, final SikevaDB source) throws SikevaDBException
|
public static void write(final XMLWriter out, final SikevaDB source) throws SikevaDBException
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2013-2018 Christian Pierre MOMON <christian.momon@devinsy.fr>
|
* Copyright (C) 2013-2024 Christian Pierre MOMON <christian.momon@devinsy.fr>
|
||||||
*
|
*
|
||||||
* This file is part of SikevaDB, simple key value database.
|
* This file is part of SikevaDB, simple key value database.
|
||||||
*
|
*
|
||||||
|
@ -22,8 +22,8 @@ package fr.devinsy.sikevadb.demo;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.apache.log4j.BasicConfigurator;
|
import org.apache.logging.log4j.core.config.Configurator;
|
||||||
import org.apache.log4j.PropertyConfigurator;
|
import org.apache.logging.log4j.core.config.DefaultConfiguration;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
|
@ -171,13 +171,13 @@ public final class SikevaDBDemo
|
||||||
File loggerConfig = new File("log4j.properties");
|
File loggerConfig = new File("log4j.properties");
|
||||||
if (loggerConfig.exists())
|
if (loggerConfig.exists())
|
||||||
{
|
{
|
||||||
PropertyConfigurator.configure(loggerConfig.getAbsolutePath());
|
Configurator.initialize(null, loggerConfig.getAbsolutePath());
|
||||||
logger.info("Dedicated log configuration done.");
|
logger.info("Dedicated log configuration done.");
|
||||||
logger.info("Configuration file was found in [{}].", loggerConfig.getAbsoluteFile());
|
logger.info("Configuration file was found in [{}].", loggerConfig.getAbsoluteFile());
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
BasicConfigurator.configure();
|
Configurator.initialize(new DefaultConfiguration());
|
||||||
logger.info("Basic log configuration done.");
|
logger.info("Basic log configuration done.");
|
||||||
logger.info("Configuration file was not found in [{}].", loggerConfig.getAbsoluteFile());
|
logger.info("Configuration file was not found in [{}].", loggerConfig.getAbsoluteFile());
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2013-2017 Christian Pierre MOMON <christian.momon@devinsy.fr>
|
* Copyright (C) 2013-2024 Christian Pierre MOMON <christian.momon@devinsy.fr>
|
||||||
*
|
*
|
||||||
* This file is part of SikevaDB, simple key value database.
|
* This file is part of SikevaDB, simple key value database.
|
||||||
*
|
*
|
||||||
|
@ -27,10 +27,7 @@ import fr.devinsy.sikevadb.core.SikevaDBException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The Class SQLArchiver.
|
* The Class SQLArchiver.
|
||||||
*
|
|
||||||
* @author Christian Pierre MOMON
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public class SQLArchiver implements Archiver
|
public class SQLArchiver implements Archiver
|
||||||
{
|
{
|
||||||
private static final Logger logger = LoggerFactory.getLogger(SQLArchiver.class);;
|
private static final Logger logger = LoggerFactory.getLogger(SQLArchiver.class);;
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2013-2018 Christian Pierre MOMON <christian.momon@devinsy.fr>
|
* Copyright (C) 2013-2024 Christian Pierre MOMON <christian.momon@devinsy.fr>
|
||||||
*
|
*
|
||||||
* This file is part of SikevaDB, simple key value database.
|
* This file is part of SikevaDB, simple key value database.
|
||||||
*
|
*
|
||||||
|
@ -20,6 +20,7 @@ package fr.devinsy.sikevadb.sql;
|
||||||
|
|
||||||
import java.io.FileNotFoundException;
|
import java.io.FileNotFoundException;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
import java.lang.reflect.InvocationTargetException;
|
||||||
import java.sql.Connection;
|
import java.sql.Connection;
|
||||||
import java.sql.DriverManager;
|
import java.sql.DriverManager;
|
||||||
import java.sql.PreparedStatement;
|
import java.sql.PreparedStatement;
|
||||||
|
@ -132,6 +133,7 @@ public class SQLSikevaDB implements SikevaDB
|
||||||
* Activate archiver.
|
* Activate archiver.
|
||||||
*
|
*
|
||||||
* @throws ClosedDatabaseException
|
* @throws ClosedDatabaseException
|
||||||
|
* the closed database exception
|
||||||
*/
|
*/
|
||||||
public void activateArchiver() throws ClosedDatabaseException
|
public void activateArchiver() throws ClosedDatabaseException
|
||||||
{
|
{
|
||||||
|
@ -1808,7 +1810,7 @@ public class SQLSikevaDB implements SikevaDB
|
||||||
//
|
//
|
||||||
if (this.url != null)
|
if (this.url != null)
|
||||||
{
|
{
|
||||||
Class.forName(this.driverClassname).newInstance();
|
Class.forName(this.driverClassname).getDeclaredConstructor().newInstance();
|
||||||
this.singleConnection = DriverManager.getConnection(this.url, this.login, this.password);
|
this.singleConnection = DriverManager.getConnection(this.url, this.login, this.password);
|
||||||
logger.info("Single connection opened with [{}].", this.url);
|
logger.info("Single connection opened with [{}].", this.url);
|
||||||
this.status = Status.OPENED;
|
this.status = Status.OPENED;
|
||||||
|
@ -1828,27 +1830,8 @@ public class SQLSikevaDB implements SikevaDB
|
||||||
throw new IllegalArgumentException("Undefined source.");
|
throw new IllegalArgumentException("Undefined source.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (InstantiationException exception)
|
catch (IllegalArgumentException | InvocationTargetException | NoSuchMethodException | SecurityException | NamingException | SQLException | InstantiationException | IllegalAccessException
|
||||||
{
|
| ClassNotFoundException exception)
|
||||||
logger.error("Error opening database.", exception);
|
|
||||||
throw new SikevaDBException("Error opening database.");
|
|
||||||
}
|
|
||||||
catch (IllegalAccessException exception)
|
|
||||||
{
|
|
||||||
logger.error("Error opening database.", exception);
|
|
||||||
throw new SikevaDBException("Error opening database.");
|
|
||||||
}
|
|
||||||
catch (ClassNotFoundException exception)
|
|
||||||
{
|
|
||||||
logger.error("Error opening database.", exception);
|
|
||||||
throw new SikevaDBException("Error opening database.");
|
|
||||||
}
|
|
||||||
catch (SQLException exception)
|
|
||||||
{
|
|
||||||
logger.error("Error opening database.", exception);
|
|
||||||
throw new SikevaDBException("Error opening database.");
|
|
||||||
}
|
|
||||||
catch (NamingException exception)
|
|
||||||
{
|
{
|
||||||
logger.error("Error opening database.", exception);
|
logger.error("Error opening database.", exception);
|
||||||
throw new SikevaDBException("Error opening database.");
|
throw new SikevaDBException("Error opening database.");
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2013-2017 Christian Pierre MOMON <christian.momon@devinsy.fr>
|
* Copyright (C) 2013-2024 Christian Pierre MOMON <christian.momon@devinsy.fr>
|
||||||
*
|
*
|
||||||
* This file is part of SikevaDB, simple key value database.
|
* This file is part of SikevaDB, simple key value database.
|
||||||
*
|
*
|
||||||
|
@ -22,6 +22,7 @@ import java.io.BufferedReader;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.StringReader;
|
import java.io.StringReader;
|
||||||
import java.net.URL;
|
import java.net.URL;
|
||||||
|
import java.nio.charset.StandardCharsets;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
import java.time.ZoneOffset;
|
import java.time.ZoneOffset;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
@ -55,7 +56,7 @@ public class SQLSikevaDBTools
|
||||||
{
|
{
|
||||||
StringList result;
|
StringList result;
|
||||||
|
|
||||||
String script = IOUtils.toString(source);
|
String script = IOUtils.toString(source, StandardCharsets.UTF_8);
|
||||||
|
|
||||||
result = splitSQLCommands(script);
|
result = splitSQLCommands(script);
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2013-2018 Christian Pierre MOMON, DEVINSY
|
* Copyright (C) 2013-2024 Christian Pierre MOMON, DEVINSY
|
||||||
*
|
*
|
||||||
* This file is part of SikevaDB, simple key value database.
|
* This file is part of SikevaDB, simple key value database.
|
||||||
*
|
*
|
||||||
|
@ -23,9 +23,9 @@ import java.time.LocalDateTime;
|
||||||
|
|
||||||
import org.apache.commons.codec.binary.Base64;
|
import org.apache.commons.codec.binary.Base64;
|
||||||
import org.apache.commons.lang3.RandomStringUtils;
|
import org.apache.commons.lang3.RandomStringUtils;
|
||||||
import org.apache.log4j.BasicConfigurator;
|
import org.apache.logging.log4j.Level;
|
||||||
import org.apache.log4j.Level;
|
import org.apache.logging.log4j.core.config.Configurator;
|
||||||
import org.apache.log4j.Logger;
|
import org.apache.logging.log4j.core.config.DefaultConfiguration;
|
||||||
import org.junit.AfterClass;
|
import org.junit.AfterClass;
|
||||||
import org.junit.Assert;
|
import org.junit.Assert;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
|
@ -717,8 +717,8 @@ public class TreeFileSikevaDBTest
|
||||||
@BeforeClass
|
@BeforeClass
|
||||||
public static void beforeClass() throws SikevaDBException
|
public static void beforeClass() throws SikevaDBException
|
||||||
{
|
{
|
||||||
BasicConfigurator.configure();
|
Configurator.initialize(new DefaultConfiguration());
|
||||||
Logger.getRootLogger().setLevel(Level.DEBUG);
|
Configurator.setRootLevel(Level.DEBUG);
|
||||||
|
|
||||||
// Add ?profileSQL=true to generate huge logs.
|
// Add ?profileSQL=true to generate huge logs.
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2013-2018 Christian Pierre MOMON, DEVINSY
|
* Copyright (C) 2013-2024 Christian Pierre MOMON, DEVINSY
|
||||||
*
|
*
|
||||||
* This file is part of SikevaDB, simple key value database.
|
* This file is part of SikevaDB, simple key value database.
|
||||||
*
|
*
|
||||||
|
@ -22,9 +22,9 @@ import java.time.LocalDateTime;
|
||||||
|
|
||||||
import org.apache.commons.codec.binary.Base64;
|
import org.apache.commons.codec.binary.Base64;
|
||||||
import org.apache.commons.lang3.RandomStringUtils;
|
import org.apache.commons.lang3.RandomStringUtils;
|
||||||
import org.apache.log4j.BasicConfigurator;
|
import org.apache.logging.log4j.Level;
|
||||||
import org.apache.log4j.Level;
|
import org.apache.logging.log4j.core.config.Configurator;
|
||||||
import org.apache.log4j.Logger;
|
import org.apache.logging.log4j.core.config.DefaultConfiguration;
|
||||||
import org.junit.AfterClass;
|
import org.junit.AfterClass;
|
||||||
import org.junit.Assert;
|
import org.junit.Assert;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
|
@ -692,8 +692,8 @@ public class SQLSikevaDBTest
|
||||||
@BeforeClass
|
@BeforeClass
|
||||||
public static void beforeClass() throws SikevaDBException
|
public static void beforeClass() throws SikevaDBException
|
||||||
{
|
{
|
||||||
BasicConfigurator.configure();
|
Configurator.initialize(new DefaultConfiguration());
|
||||||
Logger.getRootLogger().setLevel(Level.ERROR);
|
Configurator.setRootLevel(Level.DEBUG);
|
||||||
|
|
||||||
// Add ?profileSQL=true to generate huge logs.
|
// Add ?profileSQL=true to generate huge logs.
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue