:: This batch file is used to remove the g2 repository instance and the actual database containing the repository.
:: %1 g2 repository instance folder path
:: %2 g2 repository instance name

cd /d %1

:: remove the database
:: create database and populate the schema
IF "%DB2NODENAME%"=="" ( goto :Local )
goto :Remote

:Local
db2cmd /w /c /i "db2start & db2 force application all"
goto :startRemove

:Remote
db2cmd /w /c /i "db2 attach to %DB2NODENAME% user '%3' using '%4' & db2 force application all"
goto :startRemove

:startRemove
SET retry_times=0

:remove_db

:: remove database
IF "%DB2NODENAME%"=="" ( goto :removeLocal )
goto :removeRemote

:removeLocal
db2cmd /w /c /i "db2 drop database %2"
if errorlevel 1 goto :retry
goto :remove_folder

:removeRemote
db2cmd /w /c /i "db2 attach to %DB2NODENAME% user '%3' using '%4' & db2 drop database %2"
if errorlevel 1 goto :retry
goto :remove_folder

:retry
::Wait 1 sec
ping 1.1.1.1 -n 1 -w 1000> nul 
SET /A retry_times+=1
IF %retry_times% lss 20 goto :remove_db

:remove_folder
:: remove the g2 repository instance folder
cd ..
Set Sleep=0

:loop
rd %1 /s /q
IF EXIST %1 (
::Wait 1 sec
ping 1.1.1.1 -n 1 -w 1000> nul 
SET /A Sleep+=1
IF %Sleep% lss 60 GOTO :loop
exit 1
)

exit 0