Commit 22388b81 by Amir Aharon

Merge branch 'Feature-PulsarMerge' into 'feature-PubSubPulsar'

Feature pulsar merge

See merge request !4
parents 8827fb54 18c6fb01
...@@ -7,3 +7,4 @@ ...@@ -7,3 +7,4 @@
.project .project
.classpath .classpath
gradle/ gradle/
out/
\ No newline at end of file
#!/usr/bin/env bash #!/usr/bin/env sh
############################################################################## ##############################################################################
## ##
...@@ -6,12 +6,30 @@ ...@@ -6,12 +6,30 @@
## ##
############################################################################## ##############################################################################
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. # Attempt to set APP_HOME
DEFAULT_JVM_OPTS="" # Resolve links: $0 may be a link
PRG="$0"
# Need this for relative symlinks.
while [ -h "$PRG" ] ; do
ls=`ls -ld "$PRG"`
link=`expr "$ls" : '.*-> \(.*\)$'`
if expr "$link" : '/.*' > /dev/null; then
PRG="$link"
else
PRG=`dirname "$PRG"`"/$link"
fi
done
SAVED="`pwd`"
cd "`dirname \"$PRG\"`/" >/dev/null
APP_HOME="`pwd -P`"
cd "$SAVED" >/dev/null
APP_NAME="Gradle" APP_NAME="Gradle"
APP_BASE_NAME=`basename "$0"` APP_BASE_NAME=`basename "$0"`
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS=""
# Use the maximum available, or set MAX_FD != -1 to use that value. # Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD="maximum" MAX_FD="maximum"
...@@ -30,6 +48,7 @@ die ( ) { ...@@ -30,6 +48,7 @@ die ( ) {
cygwin=false cygwin=false
msys=false msys=false
darwin=false darwin=false
nonstop=false
case "`uname`" in case "`uname`" in
CYGWIN* ) CYGWIN* )
cygwin=true cygwin=true
...@@ -40,26 +59,11 @@ case "`uname`" in ...@@ -40,26 +59,11 @@ case "`uname`" in
MINGW* ) MINGW* )
msys=true msys=true
;; ;;
NONSTOP* )
nonstop=true
;;
esac esac
# Attempt to set APP_HOME
# Resolve links: $0 may be a link
PRG="$0"
# Need this for relative symlinks.
while [ -h "$PRG" ] ; do
ls=`ls -ld "$PRG"`
link=`expr "$ls" : '.*-> \(.*\)$'`
if expr "$link" : '/.*' > /dev/null; then
PRG="$link"
else
PRG=`dirname "$PRG"`"/$link"
fi
done
SAVED="`pwd`"
cd "`dirname \"$PRG\"`/" >/dev/null
APP_HOME="`pwd -P`"
cd "$SAVED" >/dev/null
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
# Determine the Java command to use to start the JVM. # Determine the Java command to use to start the JVM.
...@@ -85,7 +89,7 @@ location of your Java installation." ...@@ -85,7 +89,7 @@ location of your Java installation."
fi fi
# Increase the maximum file descriptors if we can. # Increase the maximum file descriptors if we can.
if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
MAX_FD_LIMIT=`ulimit -H -n` MAX_FD_LIMIT=`ulimit -H -n`
if [ $? -eq 0 ] ; then if [ $? -eq 0 ] ; then
if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
...@@ -150,11 +154,19 @@ if $cygwin ; then ...@@ -150,11 +154,19 @@ if $cygwin ; then
esac esac
fi fi
# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules # Escape application args
function splitJvmOpts() { save ( ) {
JVM_OPTS=("$@") for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
echo " "
} }
eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS APP_ARGS=$(save "$@")
JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
# Collect all arguments for the java command, following the shell quoting and substitution rules
eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
cd "$(dirname "$0")"
fi
exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" exec "$JAVACMD" "$@"
...@@ -8,14 +8,14 @@ ...@@ -8,14 +8,14 @@
@rem Set local scope for the variables with windows NT shell @rem Set local scope for the variables with windows NT shell
if "%OS%"=="Windows_NT" setlocal if "%OS%"=="Windows_NT" setlocal
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
set DEFAULT_JVM_OPTS=
set DIRNAME=%~dp0 set DIRNAME=%~dp0
if "%DIRNAME%" == "" set DIRNAME=. if "%DIRNAME%" == "" set DIRNAME=.
set APP_BASE_NAME=%~n0 set APP_BASE_NAME=%~n0
set APP_HOME=%DIRNAME% set APP_HOME=%DIRNAME%
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
set DEFAULT_JVM_OPTS=
@rem Find java.exe @rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome if defined JAVA_HOME goto findJavaFromJavaHome
...@@ -46,10 +46,9 @@ echo location of your Java installation. ...@@ -46,10 +46,9 @@ echo location of your Java installation.
goto fail goto fail
:init :init
@rem Get command-line arguments, handling Windowz variants @rem Get command-line arguments, handling Windows variants
if not "%OS%" == "Windows_NT" goto win9xME_args if not "%OS%" == "Windows_NT" goto win9xME_args
if "%@eval[2+2]" == "4" goto 4NT_args
:win9xME_args :win9xME_args
@rem Slurp the command line arguments. @rem Slurp the command line arguments.
...@@ -60,11 +59,6 @@ set _SKIP=2 ...@@ -60,11 +59,6 @@ set _SKIP=2
if "x%~1" == "x" goto execute if "x%~1" == "x" goto execute
set CMD_LINE_ARGS=%* set CMD_LINE_ARGS=%*
goto execute
:4NT_args
@rem Get arguments from the 4NT Shell from JP Software
set CMD_LINE_ARGS=%$
:execute :execute
@rem Setup the command line @rem Setup the command line
......
...@@ -2,6 +2,8 @@ package microservice.io.impl; ...@@ -2,6 +2,8 @@ package microservice.io.impl;
import common.microservice.io.iface.ILogger; import common.microservice.io.iface.ILogger;
import java.time.LocalDateTime;
/** /**
* Created by amir on 03/05/17. * Created by amir on 03/05/17.
*/ */
...@@ -16,6 +18,7 @@ public class ILoggerConsoleImpl implements ILogger { ...@@ -16,6 +18,7 @@ public class ILoggerConsoleImpl implements ILogger {
public static final String ANSI_PURPLE = "\u001B[35m"; public static final String ANSI_PURPLE = "\u001B[35m";
public static final String ANSI_CYAN = "\u001B[36m"; public static final String ANSI_CYAN = "\u001B[36m";
public static final String ANSI_WHITE = "\u001B[37m"; public static final String ANSI_WHITE = "\u001B[37m";
public static final int INITIAL_LOG_LENGTH = 128;
String name; String name;
String prefix; String prefix;
...@@ -23,37 +26,47 @@ public class ILoggerConsoleImpl implements ILogger { ...@@ -23,37 +26,47 @@ public class ILoggerConsoleImpl implements ILogger {
public ILoggerConsoleImpl(String name) { public ILoggerConsoleImpl(String name) {
this.name = name; this.name = name;
this.prefix = "[" + name + "]: "; this.prefix = " [" + name + "]: ";
}
String getDateTimeString(){
return LocalDateTime.now().toString();
} }
@Override @Override
public void fatal(String msg) { public void fatal(String msg) {
System.out.println(ANSI_RED + prefix + msg + ANSI_RESET); System.out.println(formatLogMsg(ANSI_RED,msg));
}
private String formatLogMsg(String color,String msg) {
StringBuilder sb = new StringBuilder(INITIAL_LOG_LENGTH);
sb.append(color).append(getDateTimeString()).append(prefix).append(msg).append(ANSI_RESET);
return sb.toString();
} }
@Override @Override
public void error(String msg) { public void error(String msg) {
if (level.ordinal() >= EnumLevel.E_ERROR.ordinal()) System.out.println(ANSI_RED + prefix + msg + ANSI_RESET); if (level.ordinal() >= EnumLevel.E_ERROR.ordinal()) System.out.println(formatLogMsg(ANSI_RED,msg));
} }
@Override @Override
public void warning(String msg) { public void warning(String msg) {
if (level.ordinal() >= EnumLevel.E_WARNING.ordinal()) System.out.println(ANSI_YELLOW + prefix + msg + ANSI_RESET); if (level.ordinal() >= EnumLevel.E_WARNING.ordinal()) System.out.println(formatLogMsg(ANSI_YELLOW,msg));
} }
@Override @Override
public void info(String msg) { public void info(String msg) {
if (level.ordinal() >= EnumLevel.E_INFO.ordinal()) System.out.println(ANSI_BLUE + prefix + msg + ANSI_RESET); if (level.ordinal() >= EnumLevel.E_INFO.ordinal()) System.out.println(formatLogMsg(ANSI_BLUE,msg));
} }
@Override @Override
public void debug(String msg) { public void debug(String msg) {
if (level.ordinal() >= EnumLevel.E_DEBUG.ordinal()) System.out.println(ANSI_WHITE + prefix + msg + ANSI_RESET); if (level.ordinal() >= EnumLevel.E_DEBUG.ordinal()) System.out.println(formatLogMsg(ANSI_WHITE,msg));
} }
@Override @Override
public void trace(String msg) { public void trace(String msg) {
if (level.ordinal() >= EnumLevel.E_TRACE.ordinal()) System.out.println(ANSI_GREEN + prefix + msg + ANSI_RESET); if (level.ordinal() >= EnumLevel.E_TRACE.ordinal()) System.out.println(formatLogMsg(ANSI_GREEN,msg));
} }
@Override @Override
......
...@@ -47,6 +47,7 @@ import java.util.ArrayList; ...@@ -47,6 +47,7 @@ import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Locale; import java.util.Locale;
import java.util.Objects; import java.util.Objects;
import java.util.concurrent.TimeUnit;
import java.util.function.Consumer; import java.util.function.Consumer;
import java.util.function.Supplier; import java.util.function.Supplier;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
...@@ -63,7 +64,7 @@ public class RestHttpClient extends SimpleRestClient implements Closeable { ...@@ -63,7 +64,7 @@ public class RestHttpClient extends SimpleRestClient implements Closeable {
private final int HTTP_SOCKET_CONNECT_TIMEOUT = Integer.valueOf(System.getProperty("microservice.http.client.connect.timeout.seconds","10")); private final int HTTP_SOCKET_CONNECT_TIMEOUT = Integer.valueOf(System.getProperty("microservice.http.client.connect.timeout.seconds","10"));
List<String> brrFieldNames = null; List<String> brrFieldNames = null;
// CloseableHttpAsyncClient httpAsyncClient = null; // CloseableHttpAsyncClient httpAsyncClient = null;
String scheme = Constants.HTTP_SCHEME; // default scheme String scheme = Constants.HTTP_SCHEME; // default scheme
public RestHttpClient(String app, String ip, int port) { public RestHttpClient(String app, String ip, int port) {
......
package microservice;
import microservice.io.iface.ILogger;
import microservice.io.impl.ILoggerConsoleImpl;
import org.junit.Test;
import java.time.LocalDateTime;
public class TestLogger {
public static final int ITERATIONS = 1000000;
@Test
public void testLocalDateTime(){
final long startTime = System.currentTimeMillis();
for (int i = 0; i < ITERATIONS; i++){
final String localDateTime = LocalDateTime.now().toString();
}
System.out.println(String.format("Test of %d Took: %d ms",ITERATIONS, System.currentTimeMillis() - startTime));
}
@Test
public void testLogger(){
ILoggerConsoleImpl logger = new ILoggerConsoleImpl("test");
logger.setLogLevel(ILogger.EnumLevel.E_TRACE);
logger.fatal("test fatal msg");
logger.error("test error msg");
logger.warning("test warning msg");
logger.info("test info msg");
logger.debug("test debug msg");
logger.trace("test trace msg");
logger.fatal("test fatal msg");
}
}
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 sign in to comment