javax.microedition.media
Interface Controllable

All Known Subinterfaces:
EffectModule, MediaProcessor, Module, SoundSource3D, Player, SourceStream
All Known Implementing Classes:
Spectator, DataSource, BlackBerryCanvas, BlackBerryForm, BlackBerryList, BlackBerryTextBox, BlackBerryGameCanvas, ByteArrayInputStreamDataSource

public interface Controllable

Controllable provides an interface for obtaining the Controls from an object like a Player. It provides methods to query all the supported Controls and to obtain a particular Control based on its class name.

Since:
BlackBerry API 4.0.0

Method Summary
 Control getControl(String controlType)
          Obtain the object that implements the specified Control interface.
 Control[] getControls()
          Obtain the collection of Controls from the object that implements this interface.
 



Method Detail

getControls

Control[] getControls()
Obtain the collection of Controls from the object that implements this interface.

Since a single object can implement multiple Control interfaces, it's necessary to check each object against different Control types. For example:

Controllable controllable;
    :
Control cs[];
cs = controllable.getControls();
for (int i = 0; i < cs.length; i++) {
    if (cs[i] instanceof ControlTypeA)
        doSomethingA();
    if (cs[i] instanceof ControlTypeB)
        doSomethingB();
    // etc.
}

The list of Control objects returned will not contain any duplicates. And the list will not change over time.

If no Control is supported, a zero length array is returned.

Returns:
the collection of Control objects.
Throws:
IllegalStateException - Thrown if getControls is called in a wrong state. See Player for more details.
Since:
BlackBerry API 4.0.0

getControl

Control getControl(String controlType)
Obtain the object that implements the specified Control interface.

If the specified Control interface is not supported then null is returned.

If the Controllable supports multiple objects that implement the same specified Control interface, only one of them will be returned. To obtain all the Control's of that type, use the getControls method and check the list for the requested type.

Parameters:
controlType - the class name of the Control. The class name should be given either as the fully-qualified name of the class; or if the package of the class is not given, the package javax.microedition.media.control is assumed.
Returns:
the object that implements the control, or null.
Throws:
IllegalArgumentException - Thrown if controlType is null.
IllegalStateException - Thrown if getControl is called in a wrong state. See Player for more details.
Since:
BlackBerry API 4.0.0





Copyright 1999-2010 Research In Motion Limited. 295 Phillip Street, Waterloo, Ontario, Canada, N2L 3W8. All Rights Reserved.
Copyright 1993-2003 Sun Microsystems, Inc. 901 San Antonio Road, Palo Alto, California, 94303, U.S.A. All Rights Reserved.
Copyright 2002-2003 Nokia Corporation All Rights Reserved.
Java is a trademark of Sun Microsystems, Inc.