コード例 #1
0
ファイル: access.py プロジェクト: cristidomsa/Ally-Py
 def getProperties(self, accessId):
     '''
     @see: IAccessService.getProperties
     '''
     assert isinstance(accessId, int), 'Invalid access id %s' % accessId
     return iterateCollection(self.session().query(
         PropertyMapped.Name).filter(PropertyMapped.accessId == accessId))
コード例 #2
0
ファイル: action.py プロジェクト: cristidomsa/Ally-Py
 def getActionsRoot(self, **options):
     '''
     @see: IActionManagerService.getActionsRoot
     '''
     sql = self.session().query(ActionMapped.Path).filter(
         not_(ActionMapped.Path.like('%.%')))
     return iterateCollection(sql, **options)
コード例 #3
0
ファイル: access.py プロジェクト: cristidomsa/Ally-Py
 def getEntries(self, accessId):
     '''
     @see: IAccessService.getEntries
     '''
     assert isinstance(accessId, int), 'Invalid access id %s' % accessId
     return iterateCollection(self.session().query(
         EntryMapped.Position).filter(EntryMapped.accessId == accessId))
コード例 #4
0
ファイル: action.py プロジェクト: cristidomsa/Ally-Py
 def getSubActions(self, path, **options):
     '''
     @see: IActionManagerService.getSubActions
     '''
     assert isinstance(path, str), 'Invalid path %s' % path
     sql = self.session().query(ActionMapped.Path).filter(ActionMapped.Path.like('%s.%%' % path))
     return iterateCollection(sql, **options)
コード例 #5
0
 def getAll(self, **options):
     '''
     @see: IEntityFindPrototype.getAll
     '''
     return iterateCollection(
         self.session().query(self.MappedId).order_by(self.MappedId),
         **options)
コード例 #6
0
ファイル: action.py プロジェクト: cristidomsa/Ally-Py
 def getSubActions(self, path, **options):
     '''
     @see: IActionManagerService.getSubActions
     '''
     assert isinstance(path, str), 'Invalid path %s' % path
     sql = self.session().query(ActionMapped.Path).filter(
         ActionMapped.Path.like('%s.%%' % path))
     return iterateCollection(sql, **options)
コード例 #7
0
ファイル: acl.py プロジェクト: cristidomsa/Ally-Py
 def getAccesses(self, identifier, **options):
     '''
     @see: IACLPrototype.getAccesses
     '''
     sql = self.session().query(self.AclAccess.accessId).join(self.Acl)
     sql = sql.filter(self.AclIdentifier == identifier)
     sql = sql.order_by(self.AclAccess.accessId)
     return iterateCollection(sql, **options)
コード例 #8
0
 def getAccesses(self, identifier, **options):
     '''
     @see: IACLPrototype.getAccesses
     '''
     sql = self.session().query(self.AclAccess.accessId).join(self.Acl)
     sql = sql.filter(self.AclIdentifier == identifier)
     sql = sql.order_by(self.AclAccess.accessId)
     return iterateCollection(sql, **options)
コード例 #9
0
    def getAcls(self, accessId, **options):
        '''
        @see: IACLPrototype.getAcls
        '''
        assert isinstance(accessId, int), 'Invalid access id %s' % accessId

        sql = self.session().query(self.AclIdentifier).join(self.AclAccess)
        sql = sql.filter(self.AclAccess.accessId == accessId)
        sql = sql.order_by(self.AclIdentifier)
        return iterateCollection(sql, **options)
コード例 #10
0
ファイル: entity.py プロジェクト: cristidomsa/Ally-Py
 def getAll(self, q=None, **options):
     '''
     @see: IEntityQueryPrototype.getAll
     '''
     assert self.QEntity is not None, 'No query available for this service'
     sql = self.session().query(self.MappedId)
     if q is not None:
         assert isinstance(q, self.QEntity), 'Invalid query %s' % q
         sql = buildQuery(sql, q, self.Mapped, orderBy=self.MappedId, autoJoin=True, **self._mapping)
     return iterateCollection(sql, **options)
コード例 #11
0
ファイル: acl.py プロジェクト: cristidomsa/Ally-Py
 def getAcls(self, accessId, **options):
     '''
     @see: IACLPrototype.getAcls
     '''
     assert isinstance(accessId, int), 'Invalid access id %s' % accessId
     
     sql = self.session().query(self.AclIdentifier).join(self.AclAccess)
     sql = sql.filter(self.AclAccess.accessId == accessId)
     sql = sql.order_by(self.AclIdentifier)
     return iterateCollection(sql, **options)
コード例 #12
0
ファイル: right.py プロジェクト: cristidomsa/Ally-Py
 def getAll(self, typeName=None, q=None, **options):
     '''
     @see: IRightService.getAll
     '''
     sql = self.session().query(RightMapped.Id)
     if typeName: sql = sql.join(RightTypeMapped).filter(RightTypeMapped.Name == typeName)
     if q is not None:
         assert isinstance(q, QRight), 'Invalid query %s' % q
         sql = buildQuery(sql, q, RightMapped)
     return iterateCollection(sql, **options)
コード例 #13
0
ファイル: acl.py プロジェクト: cristidomsa/Ally-Py
 def getEntriesFiltered(self, identifier, accessId, **options):
     '''
     @see: IACLPrototype.getEntriesFiltered
     '''
     assert isinstance(accessId, int), 'Invalid access id %s' % accessId
     
     sql = self.session().query(distinct(EntryMapped.Position))
     sql = sql.join(self.EntryFilter).join(self.AclAccess).join(self.Acl)
     sql = sql.filter(self.AclAccess.accessId == accessId).filter(self.AclIdentifier == identifier)
     sql = sql.order_by(EntryMapped.Position)
     return iterateCollection(sql, **options)
コード例 #14
0
ファイル: rbac.py プロジェクト: cristidomsa/Ally-Py
 def getRights(self, identifier, typeName=None, q=None, **options):
     '''
     @see: IRbacPrototype.getRights
     '''
     rbacId = self.findRbacId(identifier)
     if rbacId is None: return emptyCollection(**options)
     
     sql = self.sqlRights(rbacId, typeName)
     if q:
         assert isinstance(q, QRight), 'Invalid query %s' % q
         sql = buildQuery(sql, q, RightMapped)
     return iterateCollection(sql, **options)
コード例 #15
0
ファイル: acl.py プロジェクト: cristidomsa/Ally-Py
 def getPropertyFilters(self, identifier, accessId, propertyName, **options):
     '''
     @see: IACLPrototype.getPropertyFilters
     '''
     assert isinstance(accessId, int), 'Invalid access id %s' % accessId
     assert isinstance(propertyName, str), 'Invalid property name %s' % propertyName
     
     sql = self.session().query(FilterMapped.Name)
     sql = sql.join(self.PropertyFilter).join(self.AclAccess).join(self.Acl).join(PropertyMapped)
     sql = sql.filter(self.AclAccess.accessId == accessId).filter(self.AclIdentifier == identifier)
     sql = sql.filter(PropertyMapped.Name == propertyName)
     return iterateCollection(sql, **options)
コード例 #16
0
 def getAll(self, typeName=None, q=None, **options):
     '''
     @see: IRightService.getAll
     '''
     sql = self.session().query(RightMapped.Id)
     if typeName:
         sql = sql.join(RightTypeMapped).filter(
             RightTypeMapped.Name == typeName)
     if q is not None:
         assert isinstance(q, QRight), 'Invalid query %s' % q
         sql = buildQuery(sql, q, RightMapped)
     return iterateCollection(sql, **options)
コード例 #17
0
    def getEntriesFiltered(self, identifier, accessId, **options):
        '''
        @see: IACLPrototype.getEntriesFiltered
        '''
        assert isinstance(accessId, int), 'Invalid access id %s' % accessId

        sql = self.session().query(distinct(EntryMapped.Position))
        sql = sql.join(self.EntryFilter).join(self.AclAccess).join(self.Acl)
        sql = sql.filter(self.AclAccess.accessId == accessId).filter(
            self.AclIdentifier == identifier)
        sql = sql.order_by(EntryMapped.Position)
        return iterateCollection(sql, **options)
コード例 #18
0
ファイル: rbac.py プロジェクト: cristidomsa/Ally-Py
    def getRights(self, identifier, typeName=None, q=None, **options):
        '''
        @see: IRbacPrototype.getRights
        '''
        rbacId = self.findRbacId(identifier)
        if rbacId is None: return emptyCollection(**options)

        sql = self.sqlRights(rbacId, typeName)
        if q:
            assert isinstance(q, QRight), 'Invalid query %s' % q
            sql = buildQuery(sql, q, RightMapped)
        return iterateCollection(sql, **options)
コード例 #19
0
ファイル: acl.py プロジェクト: cristidomsa/Ally-Py
 def getEntryFilters(self, identifier, accessId, entryPosition, **options):
     '''
     @see: IACLPrototype.getEntryFilters
     '''
     assert isinstance(accessId, int), 'Invalid access id %s' % accessId
     assert isinstance(entryPosition, int), 'Invalid entry position %s' % entryPosition
     
     sql = self.session().query(FilterMapped.Name)
     sql = sql.join(self.EntryFilter).join(self.AclAccess).join(self.Acl).join(EntryMapped)
     sql = sql.filter(self.AclAccess.accessId == accessId).filter(self.AclIdentifier == identifier)
     sql = sql.filter(EntryMapped.Position == entryPosition)
     sql = sql.order_by(FilterMapped.Name)
     return iterateCollection(sql, **options)
コード例 #20
0
 def getAll(self, q=None, **options):
     '''
     @see: IEntityQueryPrototype.getAll
     '''
     assert self.QEntity is not None, 'No query available for this service'
     sql = self.session().query(self.MappedId)
     if q is not None:
         assert isinstance(q, self.QEntity), 'Invalid query %s' % q
         sql = buildQuery(sql,
                          q,
                          self.Mapped,
                          orderBy=self.MappedId,
                          autoJoin=True,
                          **self._mapping)
     return iterateCollection(sql, **options)
コード例 #21
0
    def getEntryFilters(self, identifier, accessId, entryPosition, **options):
        '''
        @see: IACLPrototype.getEntryFilters
        '''
        assert isinstance(accessId, int), 'Invalid access id %s' % accessId
        assert isinstance(entryPosition,
                          int), 'Invalid entry position %s' % entryPosition

        sql = self.session().query(FilterMapped.Name)
        sql = sql.join(self.EntryFilter).join(self.AclAccess).join(
            self.Acl).join(EntryMapped)
        sql = sql.filter(self.AclAccess.accessId == accessId).filter(
            self.AclIdentifier == identifier)
        sql = sql.filter(EntryMapped.Position == entryPosition)
        sql = sql.order_by(FilterMapped.Name)
        return iterateCollection(sql, **options)
コード例 #22
0
ファイル: rbac.py プロジェクト: cristidomsa/Ally-Py
 def getRoles(self, identifier, q=None, **options):
     '''
     @see: IRbacPrototype.getRoles
     '''
     rbacId = self.findRbacId(identifier)
     if rbacId is None: return emptyCollection(**options)
         
     sql = self.session().query(RoleMapped.Name)
     sql = sql.join(Child, Child.roleId == RoleMapped.id)
     sql = sql.join(Parent, and_(Child.left >= Parent.left, Child.right <= Parent.right))
     sql = sql.join(RbacRole, and_(RbacRole.roleId == Parent.roleId, RbacRole.rbacId == rbacId))
     sql = sql.order_by(RoleMapped.Name)
     if q:
         assert isinstance(q, QRole), 'Invalid query %s' % q
         sql = buildQuery(sql, q, RoleMapped)
     return iterateCollection(sql, **options)
コード例 #23
0
    def getPropertyFilters(self, identifier, accessId, propertyName,
                           **options):
        '''
        @see: IACLPrototype.getPropertyFilters
        '''
        assert isinstance(accessId, int), 'Invalid access id %s' % accessId
        assert isinstance(propertyName,
                          str), 'Invalid property name %s' % propertyName

        sql = self.session().query(FilterMapped.Name)
        sql = sql.join(self.PropertyFilter).join(self.AclAccess).join(
            self.Acl).join(PropertyMapped)
        sql = sql.filter(self.AclAccess.accessId == accessId).filter(
            self.AclIdentifier == identifier)
        sql = sql.filter(PropertyMapped.Name == propertyName)
        return iterateCollection(sql, **options)
コード例 #24
0
ファイル: rbac.py プロジェクト: cristidomsa/Ally-Py
    def getRoles(self, identifier, q=None, **options):
        '''
        @see: IRbacPrototype.getRoles
        '''
        rbacId = self.findRbacId(identifier)
        if rbacId is None: return emptyCollection(**options)

        sql = self.session().query(RoleMapped.Name)
        sql = sql.join(Child, Child.roleId == RoleMapped.id)
        sql = sql.join(
            Parent, and_(Child.left >= Parent.left,
                         Child.right <= Parent.right))
        sql = sql.join(
            RbacRole,
            and_(RbacRole.roleId == Parent.roleId, RbacRole.rbacId == rbacId))
        sql = sql.order_by(RoleMapped.Name)
        if q:
            assert isinstance(q, QRole), 'Invalid query %s' % q
            sql = buildQuery(sql, q, RoleMapped)
        return iterateCollection(sql, **options)
コード例 #25
0
ファイル: access.py プロジェクト: cristidomsa/Ally-Py
 def getProperties(self, accessId):
     '''
     @see: IAccessService.getProperties
     '''
     assert isinstance(accessId, int), 'Invalid access id %s' % accessId
     return iterateCollection(self.session().query(PropertyMapped.Name).filter(PropertyMapped.accessId == accessId))
コード例 #26
0
ファイル: entity.py プロジェクト: cristidomsa/Ally-Py
 def getAll(self, **options):
     '''
     @see: IEntityFindPrototype.getAll
     '''
     return iterateCollection(self.session().query(self.MappedId).order_by(self.MappedId), **options)
コード例 #27
0
 def getAll(self, **options):
     '''
     @see: IGatewayService.getAll
     '''
     return iterateCollection(self.session().query(GatewayData.name),
                              **options)
コード例 #28
0
ファイル: action.py プロジェクト: cristidomsa/Ally-Py
 def getActionsRoot(self, **options):
     '''
     @see: IActionManagerService.getActionsRoot
     '''
     sql = self.session().query(ActionMapped.Path).filter(not_(ActionMapped.Path.like('%.%')))
     return iterateCollection(sql, **options)
コード例 #29
0
ファイル: gateway.py プロジェクト: cristidomsa/Ally-Py
 def getAll(self, **options):
     '''
     @see: IGatewayService.getAll
     '''
     return iterateCollection(self.session().query(GatewayData.name), **options)
コード例 #30
0
ファイル: access.py プロジェクト: cristidomsa/Ally-Py
 def getEntries(self, accessId):
     '''
     @see: IAccessService.getEntries
     '''
     assert isinstance(accessId, int), 'Invalid access id %s' % accessId
     return iterateCollection(self.session().query(EntryMapped.Position).filter(EntryMapped.accessId == accessId))