(
        self,
        parties: Union[typing.List[Party], Party],
        suffix: Union[typing.Any, typing.Tuple] = tuple(),
    )
return rtn
get objects/tables from specified parties

        Parameters
        ----------
        parties: typing.List[Party]
           parties to remote object/table to
        suffix: str or tuple of str
           suffix used to distinguish federation with in variable

        Returns
        -------
        list
           a list of objects/tables get from parties with same order of ``parties``
get objects/tables from specified parties
get objects / tables from specified parties
def get_parties(
        self,
        parties: Union[typing.List[Party], Party],
        suffix: Union[typing.Any, typing.Tuple] = tuple(),
    ):
        """
        get objects/tables from specified parties

        Parameters
        ----------
        parties: typing.List[Party]
           parties to remote object/table to
        suffix: str or tuple of str
           suffix used to distinguish federation with in variable

        Returns
        -------
        list
           a list of objects/tables get from parties with same order of ``parties``

        """
        session = get_session()
        if not isinstance(parties, list):
            parties = [parties]
        if not isinstance(suffix, tuple):
            suffix = (suffix,)
        tag = FederationTagNamespace.generate_tag(*suffix)

        for party in parties:
            if party.role not in self._src:
                raise RuntimeError(
                    f"not allowed to get object from {party} using {self._name}"
                )
        local = session.parties.local_party.role
        if local not in self._dst:
            raise RuntimeError(
                f"not allowed to get object to {local} using {self._name}"
            )

        name = self._short_name if self._use_short_name else self._name
        timer = profile.federation_get_timer(name, self._name, tag, local, parties)
        rtn = session.federation.get(
            name=name, tag=tag, parties=parties, gc=self._get_gc
        )
        timer.done(session.federation)

        self._get_gc.gc()

        return rtn
def get_parties ( self , parties : Union [ typing . List [ Party ] , Party ] , suffix : Union [ typing . Any , typing . Tuple ] = tuple ( ) , ) : session = get_session ( ) if not isinstance ( parties , list ) : parties = [ parties ] if not isinstance ( suffix , tuple ) : suffix = ( suffix , ) tag = FederationTagNamespace . generate_tag ( * suffix ) for party in parties : if party . role not in self . _src : raise RuntimeError ( f"not allowed to get object from {party} using {self._name}" ) local = session . parties . local_party . role if local not in self . _dst : raise RuntimeError ( f"not allowed to get object to {local} using {self._name}" ) name = self . _short_name if self . _use_short_name else self . _name timer = profile . federation_get_timer ( name , self . _name , tag , local , parties ) rtn = session . federation . get ( name = name , tag = tag , parties = parties , gc = self . _get_gc ) timer . done ( session . federation ) self . _get_gc . gc ( ) return rtn