def queryPossible(self):
        '''Check from the database if we even have the requested number of devices to service the query.'''
        #if found return True
        #To Write a SELECT query when DB Schema finalized.
        #assuming no future queries for now
        #Untested code
        if self.queryDBObject.frequency==0:
            u=Sensor.select().where((str(self.queryObject['dataReqd'])== Sensor.SensorType)).distinct()
        else:
            u=Sensor.select().where((str(self.queryObject['dataReqd'])== Sensor.SensorType)&((Sensor.minDelay==0)|(eval(str(self.queryObject['frequency']))<1000000.0/Sensor.minDelay)) ).distinct()
        z = User.select().join(SensorUserRel).where(SensorUserRel.sensor << u).distinct()

        ''' Possible query to get all users of such sensors in u:
         z = User.select().join(SensorUserRel).where(SensorUserRel.sensor << u).distinct()
         '''
        lat1 = self.queryDBObject.Latitude
        lon1 = self.queryDBObject.Longitude
        if self.queryDBObject.Radius<0 or lat1<0 or lon1<0:
            ''' Radius to not be considered! '''
            for i in z:
                self.providerList += [i]
        else:
            R = self.queryDBObject.Radius
            for i in z:
                if self.getDistanceInKM(lon1, lat1, i.Longitude, i.Latitude) <= R:
                    self.providerList += [i]
            
        print 'Found count=' + str(len(self.providerList)) + ' for query Number: ' + self.queryNo
        
        if(len(self.providerList)>=eval(str(self.queryObject['countMin']))):
            #Query is possible; initiate messages to valid subscribers to respond with an acknowledgement.            
            return True
        else:
            return False