Get the current boot device for the node.

            Provides the current boot device of the node. Be aware that not
            all drivers support this.

            :raises: InvalidParameterValue if any connection parameters are
                incorrect.
            :raises: MissingParameterValue if a required parameter is missing
            :returns: a dictionary containing:

            :boot_device: the boot device, one of
            :mod:`ironic.common.boot_devices` or None if it is unknown.
            :persistent: Whether the boot device will persist to all
                future boots or not, None if it is unknown.

def get_boot_device(self):
        """Get the current boot device for the node.

            Provides the current boot device of the node. Be aware that not
            all drivers support this.

            :raises: InvalidParameterValue if any connection parameters are
                incorrect.
            :raises: MissingParameterValue if a required parameter is missing
            :returns: a dictionary containing:

            :boot_device: the boot device, one of
            :mod:`ironic.common.boot_devices` or None if it is unknown.
            :persistent: Whether the boot device will persist to all
                future boots or not, None if it is unknown.
            """
        operation = 'get_boot_device'
        try:
            boot_device = None
            boot_devices = get_children_by_dn(self.__handle, self.__boot_policy_dn)
            if boot_devices:
                for boot_device_mo in boot_devices:
                    if boot_device_mo.Order == 1:
                        boot_device = boot_device_rn[boot_device_mo.Rn]
                        break

            return {'boot_device': boot_device, 'persistent': None}
        except UcsException as ex:
            print "Cisco client exception: %ss." %(ex)
            raise exception.UcsOperationError(operation=operation, error=ex)