How to use the dirac.controllers.systems.accountingPlots.AccountingplotsController.__keysCache.add function in DIRAC

To help you get started, we’ve selected a few DIRAC examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github DIRACGrid / -obsolete-DIRACWeb / dirac / controllers / systems / accountingPlots.py View on Github external
#Site ordering based on TierLevel / alpha
      if 'Site' in retVal[ 'Value' ]:
        siteLevel = {}
        for siteName in retVal[ 'Value' ][ 'Site' ]:
          sitePrefix = siteName.split( "." )[0].strip()
          level = gConfig.getValue( "/Resources/Sites/%s/%s/MoUTierLevel" % ( sitePrefix, siteName ), 10 )
          if level not in siteLevel:
            siteLevel[ level ] = []
          siteLevel[ level ].append( siteName )
        orderedSites = []
        for level in sorted( siteLevel ):
          orderedSites.extend( sorted( siteLevel[ level ] ) )
        retVal[ 'Value' ][ 'Site' ] = orderedSites
      data = retVal
      AccountingplotsController.__keysCache.add( cacheKey, 300, data )
    return data
github DIRACGrid / -obsolete-DIRACWeb / dirac / controllers / systems / accountingPlots.py View on Github external
#Get unique key values
    retVal = self.__getUniqueKeyValues( typeName )
    if not retVal[ 'OK' ]:
      c.error = retVal[ 'Message' ]
      return render ( "/error.mako" )
    c.selectionValues = simplejson.dumps( retVal[ 'Value' ] )
    #Cache for plotsList?
    data = AccountingplotsController.__keysCache.get( "reportsList:%s" % typeName )
    if not data:
      repClient = ReportsClient( rpcClient = getRPCClient( "Accounting/ReportGenerator" ) )
      retVal = repClient.listReports( typeName )
      if not retVal[ 'OK' ]:
        c.error = retVal[ 'Message' ]
        return render ( "/error.mako" )
      data = simplejson.dumps( retVal[ 'Value' ] )
      AccountingplotsController.__keysCache.add( "reportsList:%s" % typeName, 300, data )
    c.plotsList = data
    return render ( templateFile )