DSMCC P
ROTOCOLS
AND
I
NTERFACES
As revised 2006.05.04
Bionic Buffalo Tech Note #55
Security:
Unrestricted
When a
Stream
object is downloaded to the client from a carousel, the downloaded object is
implemented on the client, but supports only a limited subset of the defined operations. The downloaded
object state consists of references (taps) describing the network address of a broadcast program. No
interactive playback support is provided.
12. Abstract Interfaces
Some interfaces described in DSMCC are abstract and not instantiable. In other words, they can be
inherited by other DSMCC interfaces, but an object with such an interface alone never exists.
DSM::Access
defines attributes which provides size, update time and date, lock status, and a mask of
which user groups have manager, broker, writer, or reader access to an object. Most instantiable DSM
CC interfaces inherit
DSM::Access
.
DSM::Base
provides two operations:
destroy()
and
close()
, for the destruction of objects and
for the release of references. Most instantiable DSMCC interfaces inherit
DSM::Base
.
DSM::Composite
allows a set of child objects to be associated with a given (parent) object; the
parent object inherits the
DSM::Composite
interface. A version is associated with each child object.
The interface exists for the convenience of developers, and is not required by any part of the DSMCC
specification.
DSM::Config
is used to implement a form of asynchronous operation call on the object which inherits
the
Config
interface. An attribute
DeferredSync
is used to switch the operation calls between
synchronous and asynchronous mode. In asynchronous mode, calls immediately return a request handle
from the stub, without waiting for the operation to complete. With the
inquire()
operation, the
request handle may be used to check status. With the
wait()
operation, the handle may be used later to
wait for operation completion.
DSM::Event
may be inherited by DSM::Stream. It is by an application to intercept event information
embedded in the content stream. The
subscribe()
operation subscribes to an event, while
unsubscribe()
cancels a subscription. The
notify()
operation blocks, not returning until one of
the subscribed events has been received.
DSM::First
may be inherited by a
DSM::Session
object. It provides two operations:
root()
to
obtain the
ServiceGateway
reference, and
service()
to obtain a reference to the primary service
object.
DSM::Kind
may be inherited by any instantiable interface. It provides two operations:
has_a()
to
determine if an object supports a given interface, and
is_a()
to list the interfaces supported by an
object.
Copyright 2006 Bionic Buffalo. All rights reserved.
File tn0055; Modified 20060505 12:45:42
http://www.tatanka.com/doc/technote/index.html
Email: query@tatanka.com
Page 17 of 20