IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 35177


Ignore:
Timestamp:
Feb 17, 2013, 3:37:35 PM (13 years ago)
Author:
eugene
Message:

re-work config info for scratch db to load host-based names

Location:
trunk/ippToPsps
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/ippToPsps/config/settings.xml

    r35173 r35177  
    1010  <!-- local scratch Db section (REAL version) -->
    1111  <localdatabase>
    12     <name>ipptopsps_scratch</name>
    13     <host>ipp006</host>
    14     <user>dvo</user>
    15     <password>dvo</password>
     12    <loader mach="ipp006">
     13      <name>ipptopsps_scratch1</name>
     14      <host>ipp006</host>
     15      <user>dvo</user>
     16      <password>dvo</password>
     17    </loader>
     18    <loader mach="ipp007">
     19      <name>ipptopsps_scratch1</name>
     20      <host>ipp007</host>
     21      <user>dvo</user>
     22      <password>dvo</password>
     23    </loader>
     24    <loader mach="generic">
     25      <name>ipptopsps_scratch1</name>
     26      <host>localhost</host>
     27      <user>dvo</user>
     28      <password>dvo</password>
     29    </loader>
    1630  </localdatabase>
    1731
     
    3448  <!-- local scratch Db section (TEST VERSION) -->
    3549  <localdatabase_test>
    36     <name>ipptopsps_test_scratch</name>
    37     <host>localhost</host>
    38     <user>dvo</user>
    39     <password>dvo</password>
     50    <loader mach="ipp006">
     51      <name>ipptopsps_test_scratch1</name>
     52      <host>ipp006</host>
     53      <user>dvo</user>
     54      <password>dvo</password>
     55    </loader>
     56    <loader mach="pikake">
     57      <name>ipptopsps_test_scratch1</name>
     58      <host>pikake</host>
     59      <user>dvo</user>
     60      <password>dvo</password>
     61    </loader>
     62    <loader mach="generic">
     63      <name>ipptopsps_test_scratch1</name>
     64      <host>localhost</host>
     65      <user>dvo</user>
     66      <password>dvo</password>
     67    </loader>
    4068  </localdatabase_test>
    4169
  • trunk/ippToPsps/jython/config.py

    r35097 r35177  
    6464        print "config.test: ", self.test
    6565
     66        root = self.settingsDoc.getroot()
     67        localdb = root.find('localdatabase')
     68        for loaderhost in localdb.findall('loaderhost'):
     69          name = loaderhost.get('name')
     70          dbname = loaderhost.find('dbname').text
     71          dbhost = loaderhost.find('host').text
     72          print "loaderhost / dbhost : ", name, dbname, dbhost
     73
     74
    6675    '''
    6776    Creates a logger object and returns it
     
    8594    Various db metadata getters
    8695    '''
    87     def getDbName(self, dbType): return self.settingsDoc.find(dbType +"/name").text
    88     def getDbHost(self, dbType): return self.settingsDoc.find(dbType +"/host").text
    89     def getDbUser(self, dbType): return self.settingsDoc.find(dbType +"/user").text
    90     def getDbPassword(self, dbType): return self.settingsDoc.find(dbType +"/password").text
     96    def getDbName(self, dbType):
     97        if dbType == 'localdatabase' or dbType == 'localdatabase_test':
     98            return self.scratchDbLeaf.find('name').text
     99        else:
     100            return self.settingsDoc.find(dbType +"/name").text
     101
     102    def getDbHost(self, dbType):
     103        if dbType == 'localdatabase' or dbType == 'localdatabase_test':
     104            return self.scratchDbLeaf.find('host').text
     105        else:
     106            return self.settingsDoc.find(dbType +"/host").text
     107
     108    def getDbUser(self, dbType):
     109        if dbType == 'localdatabase' or dbType == 'localdatabase_test':
     110            return self.scratchDbLeaf.find('user').text
     111        else:
     112            return self.settingsDoc.find(dbType +"/user").text
     113
     114    def getDbPassword(self, dbType):
     115        if dbType == 'localdatabase' or dbType == 'localdatabase_test':
     116            return self.scratchDbLeaf.find('password').text
     117        else:
     118            return self.settingsDoc.find(dbType +"/password").text
     119
     120    def setScratchDbLeaf(self, myhost):
     121        root = self.settingsDoc.getroot()
     122        if (self.test):
     123            localdb = root.find('localdatabase_test')
     124        else:
     125            localdb = root.find('localdatabase')
     126
     127        for loaderhost in localdb.findall('loader'):
     128          name = loaderhost.get('mach')
     129          print "name, myhost: ", name, myhost
     130          if name == myhost:
     131              self.scratchDbLeaf = loaderhost
     132              return 1
     133
     134        for loaderhost in localdb.findall('loader'):
     135          name = loaderhost.get('mach')
     136          print "name, myhost: ", name, myhost
     137          if name == 'generic':
     138              self.scratchDbLeaf = loaderhost
     139              return 1
     140
     141        print "Config Error: cannot find valid scratch db matching ", myhost, "or generic"
     142        raise
  • trunk/ippToPsps/jython/dvo.py

    r35175 r35177  
    5050        # connect to the specified scratch database, if a name is given, otherwise use the first version
    5151        try:
    52             self.scratchDb = ScratchDb(self.logger, self.config, '1', scratchDbName)
     52            self.scratchDb = ScratchDb(self.logger, self.config)
    5353        except: raise
    5454
  • trunk/ippToPsps/jython/ipptopsps.py

    r35097 r35177  
    4040        self.MINUTES = None
    4141        self.SECONDS = None
     42
     43        self.config.setScratchDbLeaf(self.HOST)
    4244
    4345        self.logger = self.config.getLogger(self.HOST, self.PID, logToStdout, logToFile)
  • trunk/ippToPsps/jython/loader.py

    r35175 r35177  
    4343
    4444        # connect to scratch database
    45         scratchDbs = ['1', '2', '3']
    46         for dbVersion in scratchDbs:
    47             self.scratchDb = ScratchDb(self.logger, self.config, dbVersion)
    48             if not self.config.test and self.scratchDb.anyOtherConnections():
    49                 self.logger.errorPair("This scratch Db is already in use", self.scratchDb.dbName)
    50                 self.scratchDb.disconnect()
    51                 continue
    52             break
    53 
    54         if not self.scratchDb.connected:
     45        self.scratchDb = ScratchDb(self.logger, self.config)
     46        if not self.config.test and self.scratchDb.anyOtherConnections():
     47            self.logger.errorPair("This scratch Db is already in use", self.scratchDb.dbName)
     48            self.scratchDb.disconnect()
    5549            self.exitProgram("Cannot connect to a scratch database")
    5650            raise
  • trunk/ippToPsps/jython/scratchdb.py

    r35097 r35177  
    1919    Constructor
    2020    '''
    21     def __init__(self, logger, config, dbVersion, dbName=None):
     21    def __init__(self, logger, config):
    2222
    2323        # create gpc1 database objects
     24        # XXX the test option is probably not needed since
     25        # the scratchDb config infor is set up specially
    2426        if (config.test):
    2527            dbType = "localdatabase_test"
     
    2729            dbType = "localdatabase"
    2830
    29         if not dbName:
    30             dbName = config.getDbName(dbType)
    31             dbName += dbVersion
     31        dbName = config.getDbName(dbType)
    3232
    3333        super(ScratchDb, self).__init__(logger, config, dbType, dbName)
Note: See TracChangeset for help on using the changeset viewer.