#! /bin/ksh
#############################################################################
# (c) Copyright IBM Corp. 2007 All rights reserved.
#
# The following sample of source code ("Sample") is owned by International
# Business Machines Corporation or one of its subsidiaries ("IBM") and is
# copyrighted and licensed, not sold. You may use, copy, modify, and
# distribute the Sample in any form without payment to IBM, for the purpose of
# assisting you in the development of your applications.
#
# The Sample code is provided to you on an "AS IS" basis, without warranty of
# any kind. IBM HEREBY EXPRESSLY DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR
# IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. Some jurisdictions do
# not allow for the exclusion or limitation of implied warranties, so the above
# limitations or exclusions may not apply to you. IBM shall not be liable for
# any damages you suffer as a result of using, copying, modifying or
# distributing the Sample, even if IBM has been advised of the possibility of
# such damages.
#############################################################################
# SCRIPT: udfcat
# To catalog JDBC user-defined functions on UNIX
# Catalogs the user-defined functions in the UDFsrv library
# UDFDrop.db2 uncatalogs the functions if previously cataloged
# UDFCreate.db2 catalogs the user-defined functions
# Both CLP scripts can be run on their own
# Usage: udfcat
#############################################################################
# Uncatalog the functions if previously cataloged
db2 -td@ -vf UDFDrop.db2
# Connect to 'sample' database
db2 connect to sample
# Uninstall the jar file if already installed
db2 "CALL sqlj.remove_jar('MYJAR1')"
# Remove the jar file if already exists
rm UDFsrv.jar
# Create a jar file 'UDFsrv.jar' using the class file 'UDFsrv.class'
# Compile 'UDFsrv.java' to get the class file 'UDFsrv.class'
echo "Executing 'javac UDFsrv.java'..."
javac UDFsrv.java
# Create the jar file
echo "Executing 'jar cf UDFsrv.jar UDFsrv.class'..."
jar cf $HOME/UDFsrv.jar UDFsrv.class Person.class
# Install the jar file using a unique jar-id.
db2 "CALL sqlj.install_jar('file:$HOME/UDFsrv.jar', 'MYJAR1')"
# Disconnect from 'sample' database
db2 connect reset
# Catalog the user-defined functions
db2 -td@ -vf UDFCreate.db2