def _canActivate(self, entityName = None, avatar = None):
        deviceStates = avatar_getter.getVehicleDeviceStates(avatar)
        if not len(deviceStates):
            return (False, _ActivationError(self._getEntitiesAreSafeKey(), None))
        elif entityName is None:
            for item in self.getEntitiesIterator():
                if item[0] in deviceStates:
                    isEntityNotRequired = not self.isEntityRequired()
                    return (isEntityNotRequired, None if isEntityNotRequired else NeedEntitySelection('', None))

            return (False, _ActivationError(self._getEntitiesAreSafeKey(), None))
        elif entityName not in deviceStates:
            return (False, NotApplyingError(self._getEntityIsSafeKey(), {'entity': self._getEntityUserString(entityName)}))
        else:
            return (True, None)
Beispiel #2
0
 def canActivate(self, entityName = None, avatar = None):
     result, error = super(_ExpandedItem, self).canActivate(entityName, avatar)
     if not result:
         return (result, error)
     else:
         deviceStates = avatar_getter.getVehicleDeviceStates(avatar)
         if not len(deviceStates):
             return (False, _ActivationError(self._getEntitiesAreSafeKey(), None))
         isRequired = self.isEntityRequired()
         if isRequired:
             if entityName is None:
                 return (False, None)
             if entityName not in deviceStates:
                 return (False, _ActivationError(self._getEntityIsSafeKey(), {'entity': self._getEntityUserString(entityName)}))
         return (True, None)
Beispiel #3
0
    def canActivate(self, entityName = None, avatar = None):
        result, error = super(_ExpandedItem, self).canActivate(entityName, avatar)
        if not result:
            return (result, error)
        deviceStates = avatar_getter.getVehicleDeviceStates(avatar)
        if not len(deviceStates):
            return (False, _ActivationError(self._getEntitiesAreSafeKey(), None))
        isRequired = self.isEntityRequired()
        if isRequired:
            if entityName is None:
                for item in self.getEntitiesIterator():
                    if item[0] in deviceStates:
                        return (False, None)

                return (False, _ActivationError(self._getEntitiesAreSafeKey(), None))
            if entityName not in deviceStates:
                return (False, _ActivationError(self._getEntityIsSafeKey(), {'entity': self._getEntityUserString(entityName)}))
        return (True, None)
Beispiel #4
0
 def getGuiIterator(self, avatar = None):
     return vehicle_getter.VehicleGUIItemStatesIterator(avatar_getter.getVehicleDeviceStates(avatar), avatar_getter.getVehicleTypeDescriptor(avatar))
Beispiel #5
0
 def getEntitiesIterator(self, avatar = None):
     return vehicle_getter.TankmenStatesIterator(avatar_getter.getVehicleDeviceStates(avatar), avatar_getter.getVehicleTypeDescriptor(avatar))
Beispiel #6
0
 def getEntitiesIterator(self, avatar=None):
     return vehicle_getter.VehicleDeviceStatesIterator(
         avatar_getter.getVehicleDeviceStates(avatar),
         avatar_getter.getVehicleTypeDescriptor(avatar))