The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Интерактивная система просмотра системных руководств (man-ов)

 ТемаНаборКатегория 
 
 [Cписок руководств | Печать]

Net::DBus::Test::MockIterator (3)
  • >> Net::DBus::Test::MockIterator (3) ( Разные man: Библиотечные вызовы )
  •  

    NAME

    Net::DBus::Test::MockIterator - Iterator over a mock message
     
    

    SYNOPSIS

    Creating a new message

      my $msg = new Net::DBus::Test::MockMessage
      my $iterator = $msg->iterator;
    
    

      $iterator->append_boolean(1);
      $iterator->append_byte(123);
    
    

    Reading from a mesage

      my $msg = ...get it from somewhere...
      my $iter = $msg->iterator();
    
    

      my $i = 0;
      while ($iter->has_next()) {
        $iter->next();
        $i++;
        if ($i == 1) {
           my $val = $iter->get_boolean();
        } elsif ($i == 2) {
           my $val = $iter->get_byte();
        }
      }
    
    
     

    DESCRIPTION

    This module provides a ``mock'' counterpart to the Net::DBus::Binding::Iterator object which is capable of iterating over mock message objects. Instances of this module are not created directly, instead they are obtained via the "iterator" method on the Net::DBus::Test::MockMessage module.  

    METHODS

    $res = $iter->has_next()
    Determines if there are any more fields in the message itertor to be read. Returns a positive value if there are more fields, zero otherwise.
    $success = $iter->next()
    Skips the iterator onto the next field in the message. Returns a positive value if the current field pointer was successfully advanced, zero otherwise.
    my $val = $iter->get_boolean()
    $iter->append_boolean($val);
    Read or write a boolean value from/to the message iterator
    my $val = $iter->get_byte()
    $iter->append_byte($val);
    Read or write a single byte value from/to the message iterator.
    my $val = $iter->get_string()
    $iter->append_string($val);
    Read or write a UTF-8 string value from/to the message iterator
    my $val = $iter->get_object_path()
    $iter->append_object_path($val);
    Read or write a UTF-8 string value, whose contents is a valid object path, from/to the message iterator
    my $val = $iter->get_signature()
    $iter->append_signature($val);
    Read or write a UTF-8 string, whose contents is a valid type signature, value from/to the message iterator
    my $val = $iter->get_int16()
    $iter->append_int16($val);
    Read or write a signed 16 bit value from/to the message iterator
    my $val = $iter->get_uint16()
    $iter->append_uint16($val);
    Read or write an unsigned 16 bit value from/to the message iterator
    my $val = $iter->get_int32()
    $iter->append_int32($val);
    Read or write a signed 32 bit value from/to the message iterator
    my $val = $iter->get_uint32()
    $iter->append_uint32($val);
    Read or write an unsigned 32 bit value from/to the message iterator
    my $val = $iter->get_int64()
    $iter->append_int64($val);
    Read or write a signed 64 bit value from/to the message iterator. An error will be raised if this build of Perl does not support 64 bit integers
    my $val = $iter->get_uint64()
    $iter->append_uint64($val);
    Read or write an unsigned 64 bit value from/to the message iterator. An error will be raised if this build of Perl does not support 64 bit integers
    my $val = $iter->get_double()
    $iter->append_double($val);
    Read or write a double precision floating point value from/to the message iterator
    my $value = $iter->get()
    my $value = $iter->get($type);
    Get the current value pointed to by this iterator. If the optional $type parameter is supplied, the wire type will be compared with the desired type & a warning output if their differ. The $type value must be one of the "Net::DBus::Binding::Message::TYPE*" constants.
    my $hashref = $iter->get_dict()
    If the iterator currently points to a dictionary value, unmarshalls and returns the value as a hash reference.
    my $hashref = $iter->get_array()
    If the iterator currently points to an array value, unmarshalls and returns the value as a array reference.
    my $hashref = $iter->get_variant()
    If the iterator currently points to a variant value, unmarshalls and returns the value contained in the variant.
    my $hashref = $iter->get_struct()
    If the iterator currently points to an struct value, unmarshalls and returns the value as a array reference. The values in the array correspond to members of the struct.
    $iter->append($value)
    $iter->append($value, $type)
    Appends a value to the message associated with this iterator. The value is marshalled into wire format, according to the following rules.

    If the $value is an instance of Net::DBus::Binding::Value, the embedded data type is used.

    If the $type parameter is supplied, that is taken to represent the data type. The type must be one of the "Net::DBus::Binding::Message::TYPE_*" constants.

    Otherwise, the data type is chosen to be a string, dict or array according to the perl data types SCALAR, HASH or ARRAY.

    my $type = $iter->guess_type($value)
    Make a best guess at the on the wire data type to use for marshalling $value. If the value is a hash reference, the dictionary type is returned; if the value is an array reference the array type is returned; otherwise the string type is returned.
    my $sig = $iter->format_signature($type)
    Given a data type representation, construct a corresponding signature string
    $iter->append_array($value, $type)
    Append an array of values to the message. The $value parameter must be an array reference, whose elements all have the same data type specified by the $type parameter.
    $iter->append_struct($value, $type)
    Append a struct to the message. The $value parameter must be an array reference, whose elements correspond to members of the structure. The $type parameter encodes the type of each member of the struct.
    $iter->append_dict($value, $type)
    Append a dictionary to the message. The $value parameter must be an hash reference.The $type parameter encodes the type of the key and value of the hash.
    $iter->append_variant($value)
    Append a value to the message, encoded as a variant type. The $value can be of any type, however, the variant will be encoded as either a string, dictionary or array according to the rules of the "guess_type" method.
    my $type = $iter->get_arg_type
    Retrieves the type code of the value pointing to by this iterator. The returned code will correspond to one of the constants "Net::DBus::Binding::Message::TYPE_*"
    my $type = $iter->get_element_type
    If the iterator points to an array, retrieves the type code of array elements. The returned code will correspond to one of the constants "Net::DBus::Binding::Message::TYPE_*"
     

    BUGS

    It doesn't completely replicate the API of Net::DBus::Binding::Iterator, merely enough to make the high level bindings work in a test scenario.  

    SEE ALSO

    Net::DBus::Test::MockMessage, Net::DBus::Binding::Iterator, <http://www.mockobjects.com/Faq.html>  

    COPYRIGHT

    Copyright 2006 Daniel Berrange <dan@berrange.com>


     

    Index

    NAME
    SYNOPSIS
    DESCRIPTION
    METHODS
    BUGS
    SEE ALSO
    COPYRIGHT


    Поиск по тексту MAN-ов: 




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру