a9a5509836dba71266780759afd2cda5249f1183
[controller.git] / karaf / opendaylight-karaf-resources / src / main / resources / bin / instance.bat
1 @echo off\r
2 rem\r
3 rem\r
4 rem    Licensed to the Apache Software Foundation (ASF) under one or more\r
5 rem    contributor license agreements.  See the NOTICE file distributed with\r
6 rem    this work for additional information regarding copyright ownership.\r
7 rem    The ASF licenses this file to You under the Apache License, Version 2.0\r
8 rem    (the "License"); you may not use this file except in compliance with\r
9 rem    the License.  You may obtain a copy of the License at\r
10 rem\r
11 rem       http://www.apache.org/licenses/LICENSE-2.0\r
12 rem\r
13 rem    Unless required by applicable law or agreed to in writing, software\r
14 rem    distributed under the License is distributed on an "AS IS" BASIS,\r
15 rem    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
16 rem    See the License for the specific language governing permissions and\r
17 rem    limitations under the License.\r
18 rem\r
19 \r
20 if not "%ECHO%" == "" echo %ECHO%\r
21 \r
22 setlocal\r
23 set DIRNAME=%~dp0%\r
24 set PROGNAME=%~nx0%\r
25 set ARGS=%*\r
26 \r
27 rem Sourcing environment settings for karaf similar to tomcats setenv\r
28 SET KARAF_SCRIPT="instance.bat"\r
29 if exist "%DIRNAME%setenv.bat" (\r
30   call "%DIRNAME%setenv.bat"\r
31 )\r
32 \r
33 rem Check console window title. Set to Karaf by default\r
34 if not "%KARAF_TITLE%" == "" (\r
35     title %KARAF_TITLE%\r
36 ) else (\r
37     title Karaf\r
38 )\r
39 \r
40 rem Check/Set up some easily accessible MIN/MAX params for JVM mem usage\r
41 if "%JAVA_MIN_MEM%" == "" (\r
42     set JAVA_MIN_MEM=128M\r
43 )\r
44 if "%JAVA_MAX_MEM%" == "" (\r
45     set JAVA_MAX_MEM=512M\r
46 )\r
47 \r
48 goto BEGIN\r
49 \r
50 :warn\r
51     echo %PROGNAME%: %*\r
52 goto :EOF\r
53 \r
54 :BEGIN\r
55 \r
56 rem # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #\r
57 \r
58 if not "%KARAF_HOME%" == "" (\r
59     call :warn Ignoring predefined value for KARAF_HOME\r
60 )\r
61 set KARAF_HOME=%DIRNAME%..\r
62 if not exist "%KARAF_HOME%" (\r
63     call :warn KARAF_HOME is not valid: "%KARAF_HOME%"\r
64     goto END\r
65 )\r
66 \r
67 if not "%KARAF_BASE%" == "" (\r
68     if not exist "%KARAF_BASE%" (\r
69        call :warn KARAF_BASE is not valid: "%KARAF_BASE%"\r
70        goto END\r
71     )\r
72 )\r
73 if "%KARAF_BASE%" == "" (\r
74   set "KARAF_BASE=%KARAF_HOME%"\r
75 )\r
76 \r
77 if not "%KARAF_DATA%" == "" (\r
78     if not exist "%KARAF_DATA%" (\r
79         call :warn KARAF_DATA is not valid: "%KARAF_DATA%"\r
80         goto END\r
81     )\r
82 )\r
83 if "%KARAF_DATA%" == "" (\r
84     set "KARAF_DATA=%KARAF_BASE%\data"\r
85 )\r
86 \r
87 if not "%KARAF_ETC%" == "" (\r
88     if not exist "%KARAF_ETC%" (\r
89         call :warn KARAF_ETC is not valid: "%KARAF_ETC%"\r
90         goto END\r
91     )\r
92 )\r
93 if "%KARAF_ETC%" == "" (\r
94     set "KARAF_ETC=%KARAF_BASE%\etc"\r
95 )\r
96 \r
97 set DEFAULT_JAVA_OPTS=\r
98 if not "%ODL_JAVA_SECURITY_PROPERTIES%" == "" (\r
99     set DEFAULT_JAVA_OPTS=-Djava.security.properties="%ODL_JAVA_SECURITY_PROPERTIES%" %DEFAULT_JAVA_OPTS%\r
100 ) else (\r
101     set DEFAULT_JAVA_OPTS=-Djava.security.properties="%KARAF_ETC%\odl.java.security" %DEFAULT_JAVA_OPTS%\r
102 )\r
103 \r
104 set DEFAULT_JAVA_DEBUG_OPTS=-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005\r
105 \r
106 rem Support for loading native libraries\r
107 set PATH=%PATH%;%KARAF_BASE%\lib;%KARAF_HOME%\lib\r
108 \r
109 rem Setup the Java Virtual Machine\r
110 if not "%JAVA%" == "" goto :Check_JAVA_END\r
111     set JAVA=java\r
112     if "%JAVA_HOME%" == "" call :warn JAVA_HOME not set; results may vary\r
113     if not "%JAVA_HOME%" == "" set JAVA=%JAVA_HOME%\bin\java\r
114     if not exist "%JAVA_HOME%" (\r
115         call :warn JAVA_HOME is not valid: "%JAVA_HOME%"\r
116         goto END\r
117     )\r
118 :Check_JAVA_END\r
119 \r
120 if "%JAVA_OPTS%" == "" set JAVA_OPTS=%DEFAULT_JAVA_OPTS%\r
121 \r
122 if "%EXTRA_JAVA_OPTS%" == "" goto :KARAF_EXTRA_JAVA_OPTS_END\r
123     set JAVA_OPTS="%JAVA_OPTS% %EXTRA_JAVA_OPTS%"\r
124 :KARAF_EXTRA_JAVA_OPTS_END\r
125 \r
126 if "%KARAF_DEBUG%" == "" goto :KARAF_DEBUG_END\r
127     rem Use the defaults if JAVA_DEBUG_OPTS was not set\r
128     if "%JAVA_DEBUG_OPTS%" == "" set JAVA_DEBUG_OPTS=%DEFAULT_JAVA_DEBUG_OPTS%\r
129 \r
130     set JAVA_OPTS="%JAVA_DEBUG_OPTS% %JAVA_OPTS%"\r
131     call :warn Enabling Java debug options: %JAVA_DEBUG_OPTS%\r
132 :KARAF_DEBUG_END\r
133 \r
134 rem Setup the classpath\r
135 pushd "%KARAF_HOME%\lib"\r
136 for %%G in (karaf*.jar) do call:APPEND_TO_CLASSPATH %%G\r
137 popd\r
138 goto CLASSPATH_END\r
139 \r
140 : APPEND_TO_CLASSPATH\r
141 set filename=%~1\r
142 set suffix=%filename:~-4%\r
143 if %suffix% equ .jar set CLASSPATH=%CLASSPATH%;%KARAF_HOME%\lib\%filename%\r
144 goto :EOF\r
145 \r
146 :CLASSPATH_END\r
147 \r
148 set CLASSPATH=%KARAF_HOME%\system\org\apache\karaf\instance\org.apache.karaf.instance.command\3.0.3\org.apache.karaf.instance.command-3.0.3.jar;%KARAF_HOME%\system\org\apache\karaf\instance\org.apache.karaf.instance.core\3.0.3\org.apache.karaf.instance.core-3.0.3.jar;%KARAF_HOME%\system\org\apache\karaf\shell\org.apache.karaf.shell.console\3.0.3\org.apache.karaf.shell.console-3.0.3.jar;%KARAF_HOME%\system\org\apache\karaf\shell\org.apache.karaf.shell.table\3.0.3\org.apache.karaf.shell.table-3.0.3.jar;%KARAF_HOME%\system\org\apache\aries\blueprint\org.apache.aries.blueprint.api\1.0.1\org.apache.aries.blueprint.api-1.0.1.jar;%KARAF_HOME%\system\org\apache\aries\blueprint\org.apache.aries.blueprint.core\1.4.2\org.apache.aries.blueprint.core-1.4.2.jar;%KARAF_HOME%\system\org\apache\aries\blueprint\org.apache.aries.blueprint.cm\1.0.5\org.apache.aries.blueprint.cm-1.0.5.jar;%KARAF_HOME%\system\org\ops4j\pax\logging\pax-logging-api\1.8.1\pax-logging-api-1.8.1.jar;%KARAF_HOME%\system\org\apache\felix\org.apache.felix.framework\4.2.1\org.apache.felix.framework-4.2.1.jar;%KARAF_HOME%\system\jline\jline\2.12\jline-2.12.jar;%CLASSPATH%\r
149 \r
150 :EXECUTE\r
151     if "%SHIFT%" == "true" SET ARGS=%2 %3 %4 %5 %6 %7 %8\r
152     if not "%SHIFT%" == "true" SET ARGS=%1 %2 %3 %4 %5 %6 %7 %8\r
153     rem Execute the Java Virtual Machine\r
154     "%JAVA%" %JAVA_OPTS% %OPTS% -classpath "%CLASSPATH%" -Dkaraf.instances="%KARAF_HOME%\instances" -Dkaraf.home="%KARAF_HOME%" -Dkaraf.base="%KARAF_BASE%" -Dkaraf.etc="%KARAF_ETC%" -Djava.io.tmpdir="%KARAF_DATA%\tmp" -Djava.util.logging.config.file="%KARAF_BASE%\etc\java.util.logging.properties" %KARAF_OPTS% org.apache.karaf.instance.main.Execute %ARGS%\r
155 \r
156 rem # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #\r
157 \r
158 :END\r
159 \r
160 endlocal\r