#################################################################### # proc createJDBCDriver. #################################################################### proc createJDBCDriver { name description classpath xa implementationClassName } { global AdminConfig putsLog "proc - [info level 0 ]" set propertiesArray(name) $name set propertiesArray(description) $description set propertiesArray(classpath) $classpath set propertiesArray(xa) $xa set propertiesArray(implementationClassName) $implementationClassName putsLog "properties are.................." foreach { a b } [ array get propertiesArray ] { putsLog [ format "%-25s %s" "$a" "$b" ] } putsLog [ string repeat . [ string length "properties are.................." ] ] set j [ $AdminConfig list JDBCProvider ] putsLog "Installed JDBC drivers are................" showList $j putsLog [ string repeat . [ string length "Installed JDBC drivers are................" ] ] #get attribute name of each JDBC driver and add to a list. foreach i $j { lappend nameList [ $AdminConfig showAttribute $i name ] } catch {lsearch $nameList $propertiesArray(name) } r ## delete the driver if it exists. if { $r != -1 } { putsLog "JDBC driver already exists. Deleting driver ..............." if { [ catch { deleteJDBCDriver $propertiesArray(name) } r ] == 0 } { putsLog $r } else { putsLog $r return -code error $r } } # create the jdbc driver at the cell level. This is the most common config. set cellId [ lindex [ $AdminConfig list Cell ] 0 ] # create the JDBC driver. putsLog "Creating JDBC driver" #set classpath [list classpath $classpath] #set implementationClassName [list implementationClassName $implementationClassName] #set name [list name $dbDriver] #set xa [list xa true] #set attrList [list $classpath $implementationClassName $name $xa ] #catch {$AdminConfig create JDBCProvider $cellId $attrList} r # list the name pairs in "WebSphere format i.e each name pair is a separate list." foreach { a b } [ array get propertiesArray ] { lappend attrList [ list $a $b ] } if { [ catch { $AdminConfig create JDBCProvider $cellId $attrList } r ] == 0 } { putsLog "$propertiesArray(name) JDBC driver created successfully." } else { putsLog "failed to create $propertiesArray(name) JDBC driver " return -code error "\n$r\n" } }