XML::Compile::XOP::Include(3) Represents one XOP node.

SYNOPSIS


# See also SYNOPSIS of XML::Compile::XOP
my $xop = XML::Compile::XOP->new;
my $xop_image = $xop->bytes($binary_image);
my $answer = $call->(image => $xop_image);

DESCRIPTION

Represents one data-set which will be represented as separate (binary) object during transport. This can only be used on data fields which are base64Binary.

YOU SHOULD NOT instantiate this kind of objects directly, but use the XML::Compile::XOP method to create them.

The object is overloaded to produce the contained data when a scalar is required, for instance when you call functions like ``length''. This means that, hopefully, the end-user does not see much of a difference between data which is transported inline or packaged separately.

METHODS

Constructors

XML::Compile::XOP::Include->fromMime($object)
Collect the data from a HTTP::Message object.
XML::Compile::XOP::Include->new(%options)
You have to specify either a "file" or "byte" source. Otherwise, the constructor will return "undef".

 -Option--Default
  bytes   undef
  cid     <required>
  file    undef
  type    <required>
  xmime   <required>
  xop     <required>
bytes => STRING|SCALAR
Take the data from a STRING of reference.
cid => STRING
The Content-ID of the binary attachment.
file => FILENAME|FILEHANDLE
Take the data from the specified file.
type => MIMETYPE
The MIME-Type of the data.
xmime => VERSION
xop => VERSION

Accessors

$obj->cid()
Returns the Content-ID.
$obj->content( [$byref] )
Returns the content, when $byref (boolean) is true, then the value is returned by reference.

Processing

$obj->mimePart( [$headers] )
Produce the message part which contains a normal mime representation of a binary file. You may provide an initial $headers (HTTP::Headers) object, or an ARRAY of headers to instantiate such an object.
$obj->write($filename|$fh)
Write the content to the specified FILE.
$obj->xmlNode($document, $path, $tag)
The $document will be used to construct the node from. The $path is an indicator for the location of the node within the data structure (used in error messages). The $tag is the prefixed name for the node to be created.

Returned is an XML node to be included in the output tree.

OVERLOAD

overload: ""
This object stringifies to its binary content.

LICENSE

Copyrights 2007-2016 by [Mark Overmeer]. For other contributors see ChangeLog.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See http://www.perl.com/perl/misc/Artistic.html