def load_module(self, fullname):
     if sys.modules.has_key(fullname):
         return sys.modules[fullname]
     combined = imp.new_module(fullname)
     fullpath = fullname.replace('.', sep)
     files = self.__getRegularFiles(fullpath)
     if files.isEmpty():
         files = self.__getPackageFiles(fullpath)
         combined.__path__ = ['DerivParamImporter']
     files = TreeMap(files)
     for file in files.values():
         source = MasterDerivScriptFactory.readLocalizationFile(file)
         exec source in combined.__dict__
     sys.modules[fullname] = combined
     return combined
 def load_module(self, fullname):
     if fullname in sys.modules:
         return sys.modules[fullname]
     combined = imp.new_module(fullname)
     combined.__loader__ = self
     fullpath = fullname.replace('.', sep)
     files = self.__getRegularFiles(fullpath)
     if files.isEmpty():
         files = self.__getPackageFiles(fullpath)
         combined.__path__ = ['DerivParamImporter']
     files = TreeMap(files)
     for file in list(files.values()):
         loader = LocalizedModuleLoader(file)
         localname = str(
             file.getContext().getLocalizationLevel()) + '-' + fullname
         localmod = loader.load_module(localname)
         combined.__dict__.update(localmod.__dict__)
     sys.modules[fullname] = combined
     return combined
示例#3
0
removeExistingCoreGroupServers()

#
# remove existing bridged coregroups
#
print "Removing existing bridged coregroups"
removeExistingBridgedCoreGroups()

#
# remove existing policies in bridged coregroups
#
print "Removing existing policies in the bridged coregroups"
removeExistingPolicies()

if (debug == 1):
    for coregroup in coregroups.values().toArray():
        print coregroup.printString()

#
# match settings for coregroups
#
defaultCoreGroup = coregroups.get("DefaultCoreGroup")
cgpVersion = getCoregroupProtocolVersion(dmgrNodeName)
hampVersion = getHAMProtocolVersion(dmgrNodeName)
for coregroup in coregroups.values():
    if (coregroup.name != defaultCoreGroup.name):
        print "Creating coregroup '", coregroup.name, "'"
        duplicateCoreGroup(defaultCoreGroup, coregroup)
    cprop = convertToList2(
        AdminConfig.showAttribute(coregroup.configid, "customProperties"))
    for prop in cprop:
示例#4
0
# Scripts are defined in Python modules (helloworld.py, goodbye.py)
# specified in grinder.properties:
#
#   script.01=helloworld
#   script.02=goodbye

from net.grinder.script.Grinder import grinder

from java.util import TreeMap

import Simple

# TreeMap is the simplest way to sort a Java map.
scripts = TreeMap(grinder.properties.getPropertySubset("script."))

# Ensure modules are initialised in the process thread.
for module in scripts.values(): print("import %s" % module)
for module in scripts.values(): exec("import %s" % module)

def createTestRunner(module):
    exec("x = %s.TestRunner()" % module)
    return x


class TestRunner:
    def __init__(self):
        self.testRunners = [createTestRunner(m) for m in scripts.values()]
    
    def __call__(self):
        for testRunner in self.testRunners: testRunner()
from net.grinder.script.Grinder import grinder
from java.util import TreeMap

scripts = TreeMap(grinder.properties.getPropertySubset("script"))
 
# Ensure modules are initialised in the process thread.
for script in scripts.values(): exec("import %s" % script)

# Ensure modules are initialised in the process thread.
for script in scripts.values(): exec("import %s" % script)
 
def createTestRunner(script):
    exec("x = %s.TestRunner()" % script)
    return x
    
class TestRunner:
    def __init__(self):
        tid = grinder.threadNumber
 
        if tid % 4 == 2:
            self.testRunner = createTestRunner(scripts[1])
        elif tid % 4 == 3:
            self.testRunner = createTestRunner(scripts[2])
        else:
            self.testRunner = createTestRunner(scripts[0])
 
    # This method is called for every run.
    def __call__(self):
        self.testRunner()
示例#6
0
class LookupData:
    def __activate__(self, context):
        self.log = context["log"]
        self.services = context["Services"]
        self.portalId = context["portalId"]
        self.formData = context["formData"]

        request = context["request"]
        request.setAttribute("Content-Type", "application/json")

        self.__solrData = self.__getSolrData()
        self.__results = self.__solrData.getResults()
        self.sortResultsByCode()

        baseUrl = context["systemConfig"].getString("", ["urlBase"])
        if baseUrl.endswith("/"):
            baseUrl = baseUrl[:-1]
        self.__baseUrl = baseUrl

    def sortResultsByCode(self):
        tempMap = HashMap()
        for result in self.__results:
            uri = String(self.getValue(result, "dc_identifier"))
            lastIndex = uri.lastIndexOf('/') + 1 
            code = uri.substring(lastIndex)
            tempMap.put(code, result)
        self.resultsByCode = TreeMap(tempMap)
        
    def getResultsByCode(self):
        return self.resultsByCode.values()
    
    def getBaseUrl(self):
        return self.__baseUrl + "/" + self.portalId

    def getLink(self):
        return ""

    def getTotalResults(self):
        return self.__solrData.getNumFound()

    def getStartIndex(self):
        return self.getFormData("startIndex", "0")

    def getItemsPerPage(self):
        return self.getFormData("count", "25")

    def getRole(self):
        return "request"

    def getSearchTerms(self):
        return self.getFormData("searchTerms", "")

    def getStartPage(self):
        #index = int(self.getStartIndex())
        #perPage = int(self.getItemsPerPage())
        return 0 #(index / perPage)

    def getResults(self):
        return self.__solrData.getResults()

    def getValue(self, doc, field):
        value = doc.getFirst(field)
        if value:
            return value.replace('"',"'").replace('\n','').strip()
        return ""

    def getValueList(self, doc, field):
        valueList = doc.getList(field)
        if valueList.isEmpty():
            return []
        return ('["%s"]' % '", "'.join(valueList) + "").strip()

    def __getSolrData(self):
        level = self.getFormData("level", None)
        if level:
            if level=="top":
                query = 'rdf_type:"http://purl.org/asc/1297.0/2008/seo/SEO2"'
            else:
                query = 'skos_broader:"%s"' % level
        else:
            prefix = self.getSearchTerms()
            if prefix != "":
                terms = prefix.split(" ")
                if len(terms)>1:
                    termsQuery = " OR %s" ' OR '.join(terms)
                else:
                    termsQuery = ""
                queryValue = "%(prefix)s OR %(prefix)s*%(terms)s" % { "prefix": prefix, "terms": termsQuery }
                query = 'dc_title:(%(qv)s)^2 OR dc_identifier:(%(qv)s)^0.5' % { "qv": queryValue }
            else:
                query = "*:*"

        portal = self.services.portalManager.get(self.portalId)
        sq = portal.searchQuery
        if sq not in ["", "*:*"]:
            query = query + " AND " + portal.searchQuery
        req = SearchRequest(query)
        req.setParam("fq", 'item_type:"object"')
        if portal.query:
            req.addParam("fq", portal.query)
        req.setParam("fl", "score")
        req.setParam("sort", "score desc, f_dc_title asc")
        req.setParam("start", self.getStartIndex())
        req.setParam("rows", self.getItemsPerPage())

        try:
            out = ByteArrayOutputStream()
            indexer = self.services.getIndexer()
            indexer.search(req, out)
            return SolrResult(ByteArrayInputStream(out.toByteArray()))
        except Exception, e:
            self.log.error("Failed to lookup '{}': {}", prefix, e.getMessage())

        return SolrResult('{}')
示例#7
0
# Run test scripts in sequence
#
# Scripts are defined in Python modules (helloworld.py, goodbye.py)
# specified in grinder.properties:
#
#   script1=helloworld
#   script2=goodbye

from net.grinder.script.Grinder import grinder

from java.util import TreeMap

# TreeMap is the simplest way to sort a Java map.
scripts = TreeMap(grinder.properties.getPropertySubset("script"))

# Ensure modules are initialised in the process thread.
for module in scripts.values(): exec("import %s" % module)

def createTestRunner(module):
    exec("x = %s.TestRunner()" % module)
    return x

class TestRunner:
    def __init__(self):
        self.testRunners = [createTestRunner(m) for m in scripts.values()]

    # This method is called for every run.
    def __call__(self):
        for testRunner in self.testRunners: testRunner()
示例#8
0
class LookupData:
    def __activate__(self, context):
        self.log = context["log"]
        self.services = context["Services"]
        self.portalId = context["portalId"]
        self.formData = context["formData"]

        request = context["request"]
        request.setAttribute("Content-Type", "application/json")

        self.__solrData = self.__getSolrData()
        self.__results = self.__solrData.getResults()
        self.sortResultsByCode()

        baseUrl = context["systemConfig"].getString("", ["urlBase"])
        if baseUrl.endswith("/"):
            baseUrl = baseUrl[:-1]
        self.__baseUrl = baseUrl

    def sortResultsByCode(self):
        tempMap = HashMap()
        for result in self.__results:
            uri = String(self.getValue(result, "dc_identifier"))
            lastIndex = uri.lastIndexOf('/') + 1
            code = uri.substring(lastIndex)
            tempMap.put(code, result)
        self.resultsByCode = TreeMap(tempMap)

    def getResultsByCode(self):
        return self.resultsByCode.values()

    def getBaseUrl(self):
        return self.__baseUrl + "/" + self.portalId

    def getLink(self):
        return ""

    def getTotalResults(self):
        return self.__solrData.getNumFound()

    def getStartIndex(self):
        return self.getFormData("startIndex", "0")

    def getItemsPerPage(self):
        return self.getFormData("count", "25")

    def getRole(self):
        return "request"

    def getSearchTerms(self):
        return self.getFormData("searchTerms", "")

    def getStartPage(self):
        #index = int(self.getStartIndex())
        #perPage = int(self.getItemsPerPage())
        return 0  #(index / perPage)

    def getResults(self):
        return self.__solrData.getResults()

    def getValue(self, doc, field):
        value = doc.getFirst(field)
        if value:
            return value.replace('"', "'").replace('\n', '').strip()
        return ""

    def getValueList(self, doc, field):
        valueList = doc.getList(field)
        if valueList.isEmpty():
            return []
        return ('["%s"]' % '", "'.join(valueList) + "").strip()

    def __getSolrData(self):
        level = self.getFormData("level", None)
        if level:
            if level == "top":
                query = 'rdf_type:"http://purl.org/asc/1297.0/2008/seo/SEO2"'
            else:
                query = 'skos_broader:"%s"' % level
        else:
            prefix = self.getSearchTerms()
            if prefix != "":
                terms = prefix.split(" ")
                if len(terms) > 1:
                    termsQuery = " OR %s" ' OR '.join(terms)
                else:
                    termsQuery = ""
                queryValue = "%(prefix)s OR %(prefix)s*%(terms)s" % {
                    "prefix": prefix,
                    "terms": termsQuery
                }
                query = 'dc_title:(%(qv)s)^2 OR dc_identifier:(%(qv)s)^0.5' % {
                    "qv": queryValue
                }
            else:
                query = "*:*"

        portal = self.services.portalManager.get(self.portalId)
        sq = portal.searchQuery
        if sq not in ["", "*:*"]:
            query = query + " AND " + portal.searchQuery
        req = SearchRequest(query)
        req.setParam("fq", 'item_type:"object"')
        if portal.query:
            req.addParam("fq", portal.query)
        req.setParam("fl", "score")
        req.setParam("sort", "score desc, f_dc_title asc")
        req.setParam("start", self.getStartIndex())
        req.setParam("rows", self.getItemsPerPage())

        try:
            out = ByteArrayOutputStream()
            indexer = self.services.getIndexer()
            indexer.search(req, out)
            return SolrResult(ByteArrayInputStream(out.toByteArray()))
        except Exception, e:
            self.log.error("Failed to lookup '{}': {}", prefix, e.getMessage())

        return SolrResult('{}')