@utilities.arguments_not_none<EOL><INDENT>def get_banks_by_genus_type(self, bank_genus_type):<DEDENT>
<EOL>if self._catalog_session is not None:<EOL><INDENT>return self._catalog_session.get_catalogs_by_genus_type(catalog_genus_type=bank_genus_type)<EOL><DEDENT>collection = JSONClientValidated('<STR_LIT>',<EOL>collection='<STR_LIT>',<EOL>runtime=self._runtime)<EOL>result = collection.find({"<STR_LIT>": str(bank_genus_type)}).sort('<STR_LIT>', DESCENDING)<EOL>return objects.BankList(result, runtime=self._runtime, proxy=self._proxy)<EOL>
Gets a ``BankList`` corresponding to the given bank genus ``Type`` which does not include banks of types derived from the specified ``Type``.

        In plenary mode, the returned list contains all known banks or
        an error results. Otherwise, the returned list may contain only
        those banks that are accessible through this session.

        arg:    bank_genus_type (osid.type.Type): a bank genus type
        return: (osid.assessment.BankList) - the returned ``Bank`` list
        raise:  NullArgument - ``bank_genus_type`` is ``null``
        raise:  OperationFailed - unable to complete request
        raise:  PermissionDenied - authorization failure occurred
        *compliance: mandatory -- This method must be implemented.*