|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.googlecode.android_scripting.jsonrpc.RpcReceiver
com.googlecode.android_scripting.facade.EventFacade
public class EventFacade
Manage the event queue.
Usage Notes:
EventFacade APIs interact with the Event Queue (a data buffer containing up to 1024 event
entries).
Events are automatically entered into the Event Queue following API calls such as startSensing()
and startLocating().
The Event Facade provides control over how events are entered into (and removed from) the Event
Queue.
The Event Queue provides a useful means of recording background events (such as sensor data) when
the phone is busy with foreground activities.
| Nested Class Summary | |
|---|---|
class |
EventFacade.BroadcastListener
|
static interface |
EventFacade.EventObserver
|
| Constructor Summary | |
|---|---|
EventFacade(FacadeManager manager)
|
|
| Method Summary | |
|---|---|
void |
addGlobalEventObserver(EventFacade.EventObserver observer)
|
void |
addNamedEventObserver(java.lang.String eventName,
EventFacade.EventObserver observer)
|
void |
eventClearBuffer()
Example (python): droid.eventClearBuffer() |
java.util.Set<java.lang.String> |
eventGetBrodcastCategories()
|
java.util.List<Event> |
eventPoll(java.lang.Integer number_of_events)
Actual data returned in the map will depend on the type of event. |
void |
eventPost(java.lang.String name,
java.lang.String data,
java.lang.Boolean enqueue)
Example: import android from datetime import datetime droid = android.Android() t = datetime.now() droid.eventPost('Some Event', t) |
boolean |
eventRegisterForBroadcast(java.lang.String category,
java.lang.Boolean enqueue)
Registers a listener for a new broadcast signal |
void |
eventUnregisterForBroadcast(java.lang.String category)
|
Event |
eventWait(java.lang.Integer timeout)
|
Event |
eventWaitFor(java.lang.String eventName,
java.lang.Integer timeout)
|
void |
postEvent(java.lang.String name,
java.lang.Object data)
Post an event and queue it |
void |
postEvent(java.lang.String name,
java.lang.Object data,
boolean enqueue)
Posts an event with to the event queue. |
Event |
receiveEvent()
|
void |
removeEventObserver(EventFacade.EventObserver observer)
|
void |
rpcPostEvent(java.lang.String name,
java.lang.String data)
|
void |
shutdown()
Invoked when the receiver is shut down. |
int |
startEventDispatcher(java.lang.Integer port)
|
void |
stopEventDispatcher()
|
Event |
waitForEvent(java.lang.String eventName,
java.lang.Integer timeout)
|
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public EventFacade(FacadeManager manager)
| Method Detail |
|---|
@Rpc(description="Clears all events from the event buffer.") public void eventClearBuffer()
@Rpc(description="Registers a listener for a new broadcast signal")
public boolean eventRegisterForBroadcast(@RpcParameter(name="category")
java.lang.String category,
@RpcParameter(name="enqueue",description="Should this events be added to the event queue or only dispatched")@RpcDefault(value="true")
java.lang.Boolean enqueue)
@Rpc(description="Stop listening for a broadcast signal")
public void eventUnregisterForBroadcast(@RpcParameter(name="category")
java.lang.String category)
@Rpc(description="Lists all the broadcast signals we are listening for") public java.util.Set<java.lang.String> eventGetBrodcastCategories()
@Rpc(description="Returns and removes the oldest n events (i.e. location or sensor update, etc.) from the event buffer.",
returns="A List of Maps of event properties.")
public java.util.List<Event> eventPoll(@RpcParameter(name="number_of_events")@RpcDefault(value="1")
java.lang.Integer number_of_events)
Example (python):
import android, time
droid = android.Android()
droid.startSensing()
time.sleep(1)
droid.eventClearBuffer()
time.sleep(1)
e = eventPoll(1).result
event_entry_number = 0
x = e[event_entry_ number]['data']['xforce']
e has the format:
@Rpc(description="Blocks until an event with the supplied name occurs. The returned event is not removed from the buffer.",
returns="Map of event properties.")
public Event eventWaitFor(@RpcParameter(name="eventName")
java.lang.String eventName,
@RpcParameter(name="timeout",description="the maximum time to wait (in ms)")@RpcOptional
java.lang.Integer timeout)
throws java.lang.InterruptedException
java.lang.InterruptedException
@Rpc(description="Blocks until an event occurs. The returned event is removed from the buffer.",
returns="Map of event properties.")
public Event eventWait(@RpcParameter(name="timeout",description="the maximum time to wait")@RpcOptional
java.lang.Integer timeout)
throws java.lang.InterruptedException
java.lang.InterruptedException
@Rpc(description="Post an event to the event queue.")
public void eventPost(@RpcParameter(name="name",description="Name of event")
java.lang.String name,
@RpcParameter(name="data",description="Data contained in event.")
java.lang.String data,
@RpcParameter(name="enqueue",description="Set to False if you don\'t want your events to be added to the event queue, just dispatched.")@RpcOptional@RpcDefault(value="false")
java.lang.Boolean enqueue)
Example:
import android
from datetime import datetime
droid = android.Android()
t = datetime.now()
droid.eventPost('Some Event', t)
public void postEvent(java.lang.String name,
java.lang.Object data)
public void postEvent(java.lang.String name,
java.lang.Object data,
boolean enqueue)
@RpcDeprecated(value="eventPost",
release="r4")
@Rpc(description="Post an event to the event queue.")
@RpcName(name="postEvent")
public void rpcPostEvent(@RpcParameter(name="name")
java.lang.String name,
@RpcParameter(name="data")
java.lang.String data)
@RpcDeprecated(value="eventPoll",
release="r4")
@Rpc(description="Returns and removes the oldest event (i.e. location or sensor update, etc.) from the event buffer.",
returns="Map of event properties.")
public Event receiveEvent()
@RpcDeprecated(value="eventWaitFor",
release="r4")
@Rpc(description="Blocks until an event with the supplied name occurs. The returned event is not removed from the buffer.",
returns="Map of event properties.")
public Event waitForEvent(@RpcParameter(name="eventName")
java.lang.String eventName,
@RpcParameter(name="timeout",description="the maximum time to wait")@RpcOptional
java.lang.Integer timeout)
throws java.lang.InterruptedException
java.lang.InterruptedException
@Rpc(description="Opens up a socket where you can read for events posted")
public int startEventDispatcher(@RpcParameter(name="port",description="Port to use")@RpcDefault(value="0")@RpcOptional
java.lang.Integer port)
@Rpc(description="Stops the event server, you can\'t read in the port anymore")
public void stopEventDispatcher()
throws java.lang.RuntimeException
java.lang.RuntimeExceptionpublic void shutdown()
RpcReceiver
shutdown in class RpcReceiver
public void addNamedEventObserver(java.lang.String eventName,
EventFacade.EventObserver observer)
public void addGlobalEventObserver(EventFacade.EventObserver observer)
public void removeEventObserver(EventFacade.EventObserver observer)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||