list[dict]: A list of dictionary items of port channels.

        Examples:
            >>> import pynos.device
            >>> switches = ['10.24.39.202']
            >>> auth = ('admin', 'password')
            >>> for switch in switches:
            ...     conn = (switch, '22')
            ...     with pynos.device.Device(conn=conn, auth=auth) as dev:
            ...         output = dev.interface.channel_group(name='226/0/1',
            ...         int_type='tengigabitethernet',
            ...         port_int='1', channel_type='standard', mode='active')
            ...         result = dev.interface.port_channels
            ...         is_port_channel_exist = False
            ...         for port_chann in result:
            ...             if port_chann['interface-name']=='port-channel-1':
            ...                 for interfaces in port_chann['interfaces']:
            ...                     for keys, values in interfaces.items():
            ...                         if '226/0/1' in values:
            ...                             is_port_channel_exist = True
            ...                             break
            ...         output = dev.interface.remove_port_channel(
            ...         port_int='1')
            ...         assert is_port_channel_exist

def port_channels(self):
        """list[dict]: A list of dictionary items of port channels.

        Examples:
            >>> import pynos.device
            >>> switches = ['10.24.39.202']
            >>> auth = ('admin', 'password')
            >>> for switch in switches:
            ...     conn = (switch, '22')
            ...     with pynos.device.Device(conn=conn, auth=auth) as dev:
            ...         output = dev.interface.channel_group(name='226/0/1',
            ...         int_type='tengigabitethernet',
            ...         port_int='1', channel_type='standard', mode='active')
            ...         result = dev.interface.port_channels
            ...         is_port_channel_exist = False
            ...         for port_chann in result:
            ...             if port_chann['interface-name']=='port-channel-1':
            ...                 for interfaces in port_chann['interfaces']:
            ...                     for keys, values in interfaces.items():
            ...                         if '226/0/1' in values:
            ...                             is_port_channel_exist = True
            ...                             break
            ...         output = dev.interface.remove_port_channel(
            ...         port_int='1')
            ...         assert is_port_channel_exist
        """
        pc_urn = "{urn:brocade.com:mgmt:brocade-lag}"
        result = []
        has_more = ''
        last_aggregator_id = ''
        while (has_more == '') or (has_more == 'true'):
            request_port_channel = self.get_port_chann_detail_request(
                last_aggregator_id)
            port_channel_result = self._callback(request_port_channel, 'get')
            has_more = self.get_node_value(port_channel_result,
                                           '%shas-more', pc_urn)
            if has_more == 'true':
                for x in port_channel_result.findall('%slacp' % pc_urn):
                    last_aggregator_id = self.get_node_value(x,
                                                             '%saggregator-id',
                                                             pc_urn)

            for item in port_channel_result.findall('%slacp' % pc_urn):
                interface_list = []
                aggregator_id = self.get_node_value(
                    item, '%saggregator-id', pc_urn)
                aggregator_type = self.get_node_value(
                    item, '%saggregator-type', pc_urn)
                is_vlag = self.get_node_value(item, '%sisvlag', pc_urn)
                aggregator_mode = self.get_node_value(
                    item, '%saggregator-mode', pc_urn)
                system_priority = self.get_node_value(
                    item, '%ssystem-priority', pc_urn)
                actor_system_id = self.get_node_value(
                    item, '%sactor-system-id', pc_urn)
                partner_oper_priority = self.get_node_value(
                    item, '%spartner-oper-priority', pc_urn)
                partner_system_id = self.get_node_value(
                    item, '%spartner-system-id', pc_urn)
                admin_key = self.get_node_value(
                    item, '%sadmin-key', pc_urn)
                oper_key = self.get_node_value(item, '%soper-key', pc_urn)
                partner_oper_key = self.get_node_value(
                    item, '%spartner-oper-key', pc_urn)
                rx_link_count = self.get_node_value(
                    item, '%srx-link-count', pc_urn)
                tx_link_count = self.get_node_value(
                    item, '%stx-link-count', pc_urn)
                individual_agg = self.get_node_value(
                    item, '%sindividual-agg', pc_urn)
                ready_agg = self.get_node_value(
                    item, '%sready-agg', pc_urn)
                for item1 in item.findall('%saggr-member' % pc_urn):
                    rbridge_id = self.get_node_value(
                        item1, '%srbridge-id', pc_urn)
                    int_type = self.get_node_value(
                        item1, '%sinterface-type', pc_urn)
                    int_name = self.get_node_value(
                        item1, '%sinterface-name', pc_urn)
                    actor_port = self.get_node_value(
                        item1, '%sactor-port', pc_urn)
                    sync = self.get_node_value(item1, '%ssync', pc_urn)
                    port_channel_interface = {'rbridge-id': rbridge_id,
                                              'interface-type': int_type,
                                              'interface-name': int_name,
                                              'actor_port': actor_port,
                                              'sync': sync}
                    interface_list.append(port_channel_interface)
                results = {'interface-name': 'port-channel-' + aggregator_id,
                           'interfaces': interface_list,
                           'aggregator_id': aggregator_id,
                           'aggregator_type': aggregator_type,
                           'is_vlag': is_vlag,
                           'aggregator_mode': aggregator_mode,
                           'system_priority': system_priority,
                           'actor_system_id': actor_system_id,
                           'partner-oper-priority': partner_oper_priority,
                           'partner-system-id': partner_system_id,
                           'admin-key': admin_key,
                           'oper-key': oper_key,
                           'partner-oper-key': partner_oper_key,
                           'rx-link-count': rx_link_count,
                           'tx-link-count': tx_link_count,
                           'individual-agg': individual_agg,
                           'ready-agg': ready_agg}

                result.append(results)
        return result