NAME¶
TM::Materialized::Stream - Topic Maps, abstract class for maps with stream based
input/output drivers
SYNOPSIS¶
# this class will never be directly used for instantiation
# see the description in TM and individual low-level drivers (AsTMa, ...)
DESCRIPTION¶
This class is a subclass of TM, so it implements map objects. It is abstract,
though, as it only defined how a stream-based driver package should behave. It
may thus be inherited by classes which implement external formats
(TM::Materialized::AsTMa, TM::Materialized::XML, ....).
INTERFACE¶
Constructor¶
The constructor of implementations should expect a hash as parameter containing
the field(s) from TM and one or more of the following:
- url:
- If given, then the instance will be read from this url whenever synced
in.
- file:
- If given, then the data will be read/written from/to this file. This is
just a convenience as it will be mapped to url.
- inline:
- If given, then the instance will be read directly from this text provided
inline when synced.
If several fields ("file", "url", "inline") are
specified, it is undefined which one will be taken.
Examples (using AsTMa):
# opening from an AsTMa= file
$atm = new TM::Materialized::AsTMa (file => 'here.atm');
# why need a file? files are evil, anyway
$atm = new TM::Materialized::AsTMa (inline => '# this is AsTMa');
SEE ALSO¶
TM
Copyright 200[2-6], Robert Barta <drrho@cpan.org>, All rights reserved.
This library is free software; you can redistribute it and/or modify it under
the same terms as Perl itself.
http://www.perl.com/perl/misc/Artistic.html