com.free2be.dimensions.device
Interface Device

All Superinterfaces:
java.io.Serializable
All Known Implementing Classes:
DeviceProfile, SimpleDevice

public interface Device
extends java.io.Serializable

This device represents the capabilities of an actual device. A device contains many components that are detailed through accessing each component. Since not all attributes may be known for a particular device a null is used to indicate an unknown state. No primitives are used anywhere in the device framework. The attributes found here are used as keys to decide the correct dimension in tiles. The keys shall always be lowercase regardless of the rdf source if used.

Content Type

Default is at the top of the tree. The defualt will contain common information for all content types. From there, Content type is below Default.

Device Type

Device Type is a very general description of the client device: phone, pda, pc.

MIDP

Device Subtype clarifies a bit more on the software the device is using...like OS or browser. MIDP acts almost opposite of HTML phones and the likes. Since MIDP shares a lot of the same characteristics across devices (Java's claim to platform independence) then it would be a shame to lose inherited values in a midp phone and midp pda soap soap | | ------------ -------- | | | | | WS Phone PDA MIDP WS | | | MIDP MIDP --------- | | Phone PDA See how common attributes would proably reside in MIDP and slight differences may be given on the type of device. If we went with the left tree, it is foreseeable that duplicate entries would be made in the extending MIDP. MIDP as a content type does not make sense since MIDP may support essentially any content. So device type and device subtype is very subjective and does not apply to a disciplined formula.

Note: All implementations of this device should not contain session-specific knowledge. For instance, knowledge of simulation would be helpful to have on the device, but this would require a new device created for every session or perhaps request. Knowledge of request or session level information should come directly from the factories allowing a factory to provide the same device for the entire application.


Field Summary
static java.lang.String HTML_CONTENT_TYPE
           
static java.lang.String INTERNET_EXPLORER_BROWSER
           
static java.lang.String MIDP
           
static java.lang.String NETSCAPE_BROWSER
           
static java.lang.String PC
           
static java.lang.String PDA
           
static java.lang.String PHONE
           
static java.lang.String SOAP_CONTENT_TYPE
           
static java.lang.String VXML_CONTENT_TYPE
           
static java.lang.String WEB_SERVICES
           
static java.lang.String WML_CONTENT_TYPE
           
static java.lang.String XML_CONTENT_TYPE
           
 
Method Summary
 java.lang.String getContentType()
          Indicates the preferred content type as defined in the factory.
 java.lang.String getDeviceSubtype()
          The next level of detail beyond device type.
 java.lang.String getDeviceType()
          Indicates the preferred content type as defined in the factory.
 Hardware getHardware()
           
 java.lang.String getModel()
          The model of the device made by the vendor.
 Network getNetwork()
           
 Software getSoftware()
           
 java.lang.String getVendor()
          The manufacturer of the client device.
 

Field Detail

HTML_CONTENT_TYPE

static final java.lang.String HTML_CONTENT_TYPE
See Also:
Constant Field Values

WML_CONTENT_TYPE

static final java.lang.String WML_CONTENT_TYPE
See Also:
Constant Field Values

VXML_CONTENT_TYPE

static final java.lang.String VXML_CONTENT_TYPE
See Also:
Constant Field Values

XML_CONTENT_TYPE

static final java.lang.String XML_CONTENT_TYPE
See Also:
Constant Field Values

SOAP_CONTENT_TYPE

static final java.lang.String SOAP_CONTENT_TYPE
See Also:
Constant Field Values

PHONE

static final java.lang.String PHONE
See Also:
Constant Field Values

PC

static final java.lang.String PC
See Also:
Constant Field Values

PDA

static final java.lang.String PDA
See Also:
Constant Field Values

MIDP

static final java.lang.String MIDP
See Also:
Constant Field Values

WEB_SERVICES

static final java.lang.String WEB_SERVICES
See Also:
Constant Field Values

INTERNET_EXPLORER_BROWSER

static final java.lang.String INTERNET_EXPLORER_BROWSER
See Also:
Constant Field Values

NETSCAPE_BROWSER

static final java.lang.String NETSCAPE_BROWSER
See Also:
Constant Field Values
Method Detail

getContentType

java.lang.String getContentType()
Indicates the preferred content type as defined in the factory. This will return only the subtype of the content mime type (i.e. text/html will return html). All content types is also available from Browser.

Returns:
String subtype of mime type or empty string if not known...null is never o.k.
See Also:
Browser

getDeviceType

java.lang.String getDeviceType()
Indicates the preferred content type as defined in the factory. This will return only the subtype of the content mime type (i.e. text/html will return html). All content types is also available from Browser.

Returns:
String enumerated device types or empty string if not known...null is never returned.
See Also:
Hardware

getDeviceSubtype

java.lang.String getDeviceSubtype()
The next level of detail beyond device type. May indicate a type of browser or OS. examples: netscape or ie for personal computers ce or palm for pda, however, palm may be expanded into the browser type(blazer).


getVendor

java.lang.String getVendor()
The manufacturer of the client device. Often times this is not known, however, in new CC/PP and WAP profiles this and more specific are feasible. example: samsung, sanyo, ericson, etc.


getModel

java.lang.String getModel()
The model of the device made by the vendor. i.e. this is intended to be used with a series like Treo from Handspring.


getSoftware

Software getSoftware()

getHardware

Hardware getHardware()

getNetwork

Network getNetwork()