in content/artifacts/daytrader_singleServer.py [0:0]
def createJDBCProvider (provider, XA, scopeId, path, nativePath):
XA = XA.lower()
name = "Derby JDBC Provider"
if (XA == "true"):
name = "Derby JDBC Provider Only (XA)"
#endIf
print " "
print "Creating JDBC Provider " + name + "..."
# Check if the JDBC provider already exists
scopeName = getName(scopeId)
stIndex = (scopeId.find("|") + 1)
endIndex = (scopeId.find(".") - 1)
scope = scopeId[stIndex:endIndex+1]
providerId = ""
if (scope == "cell"):
providerId = AdminConfig.getid("/Cell:"+scopeName+"/JDBCProvider:\""+name+"\"/" )
elif (scope == "node"):
providerId = AdminConfig.getid("/Node:"+scopeName+"/JDBCProvider:\""+name+"\"/" )
elif (scope == "server"):
providerId = AdminConfig.getid("/Server:"+scopeName+"/JDBCProvider:\""+name+"\"/" )
#endIf
if (providerId == ""):
print " Provider Name: " + name
print " Classpath: " + path
print " Native path: " + nativePath
print " XA enabled: " + XA
template = AdminConfig.listTemplates("JDBCProvider", name+"(")
providerId = AdminConfig.createUsingTemplate("JDBCProvider", scopeId, [["name", name], ["classpath", path], ["nativepath", nativePath]], template)
# Template creates a datasource with the same name as the provider
# Delete this datasource
dsId = ""
dsList = AdminConfig.list("DataSource")
if (len(dsList) > 0):
for item in dsList.split("\n"):
item = item.rstrip()
provider = AdminConfig.showAttribute(item, "provider" )
if (providerId == provider):
dsId = item
print "Found DS"
#endIf
#endFor
#endIf
if (dsId != ""):
AdminConfig.remove(dsId)
#endIf
print name + " provider created successfully!"
else:
print name + " provider already exists!"
#endElse
return providerId