Some testing code.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@31 542714f4-19e9-0310-aa3c-eee0fc999fb1
This commit is contained in:
@@ -0,0 +1,59 @@
|
|||||||
|
//
|
||||||
|
// $Id: DOMTest.java,v 1.1 2001/06/09 23:39:42 mdb Exp $
|
||||||
|
|
||||||
|
package com.threerings.cocktail.cher.server.test;
|
||||||
|
|
||||||
|
import com.threerings.cocktail.cher.Log;
|
||||||
|
import com.threerings.cocktail.cher.dobj.*;
|
||||||
|
import com.threerings.cocktail.cher.server.*;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A simple test case for the dobjmgr.
|
||||||
|
*/
|
||||||
|
public class DOMTest implements Subscriber
|
||||||
|
{
|
||||||
|
public void objectAvailable (DObject object)
|
||||||
|
{
|
||||||
|
Log.info("Object available: " + object);
|
||||||
|
// set some values
|
||||||
|
TestObject to = (TestObject)object;
|
||||||
|
to.setFoo(25);
|
||||||
|
to.setBar("howdy");
|
||||||
|
}
|
||||||
|
|
||||||
|
public void requestFailed (int oid, ObjectAccessException cause)
|
||||||
|
{
|
||||||
|
Log.info("Request failed: " + cause);
|
||||||
|
omgr.shutdown();
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean handleEvent (DEvent event, DObject target)
|
||||||
|
{
|
||||||
|
Log.info("Got event [event=" + event + ", target=" + target + "].");
|
||||||
|
|
||||||
|
// if this is the second event, request a shutdown
|
||||||
|
AttributeChangedEvent ace = (AttributeChangedEvent)event;
|
||||||
|
if (ace.getName().equals(TestObject.BAR)) {
|
||||||
|
omgr.shutdown();
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static CherDObjectMgr omgr = new CherDObjectMgr();
|
||||||
|
|
||||||
|
public static void main (String[] args)
|
||||||
|
{
|
||||||
|
// create our subscriber who will do things
|
||||||
|
DOMTest sub = new DOMTest();
|
||||||
|
|
||||||
|
// request that a new TestObject be created
|
||||||
|
omgr.createObject(TestObject.class, sub, true);
|
||||||
|
|
||||||
|
// or for fun you can try this bogus create request
|
||||||
|
// omgr.createObject(Integer.class, sub, true);
|
||||||
|
|
||||||
|
// and run the object manager
|
||||||
|
omgr.run();
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,44 @@
|
|||||||
|
//
|
||||||
|
// $Id: TestObject.dobj,v 1.1 2001/06/09 23:39:42 mdb Exp $
|
||||||
|
|
||||||
|
package com.threerings.cocktail.cher.server.test;
|
||||||
|
|
||||||
|
import com.threerings.cocktail.cher.dobj.*;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* I use this to test until I get the actual DObject generation script
|
||||||
|
* working.
|
||||||
|
*/
|
||||||
|
public class TestObject extends DObject
|
||||||
|
{
|
||||||
|
public static final String FOO = "foo";
|
||||||
|
|
||||||
|
public int foo;
|
||||||
|
|
||||||
|
public static final String BAR = "bar";
|
||||||
|
|
||||||
|
public String bar;
|
||||||
|
|
||||||
|
public void setFoo (int foo)
|
||||||
|
{
|
||||||
|
// generate an attribute changed event
|
||||||
|
AttributeChangedEvent event = new AttributeChangedEvent(
|
||||||
|
_oid, FOO, new Integer(foo));
|
||||||
|
// and dispatch it to our dobjmgr
|
||||||
|
_mgr.postEvent(event);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBar (String bar)
|
||||||
|
{
|
||||||
|
// generate an attribute changed event
|
||||||
|
AttributeChangedEvent event = new AttributeChangedEvent(
|
||||||
|
_oid, BAR, bar);
|
||||||
|
// and dispatch it to our dobjmgr
|
||||||
|
_mgr.postEvent(event);
|
||||||
|
}
|
||||||
|
|
||||||
|
public String toString ()
|
||||||
|
{
|
||||||
|
return "[foo=" + foo + ", bar=" + bar + "]";
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user