Files
vilya/apidocs/com/threerings/whirled/server/SceneRegistry.html
T
2011-04-06 17:01:15 -07:00

512 lines
26 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.6.0_24) on Wed Apr 06 17:00:16 PDT 2011 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
SceneRegistry (vilya 1.3 API)
</TITLE>
<META NAME="date" CONTENT="2011-04-06">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="SceneRegistry (vilya 1.3 API)";
}
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<HR>
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/SceneRegistry.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../com/threerings/whirled/server/SceneProvider.html" title="interface in com.threerings.whirled.server"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../com/threerings/whirled/server/SceneRegistry.ConfigFactory.html" title="interface in com.threerings.whirled.server"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?com/threerings/whirled/server/SceneRegistry.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="SceneRegistry.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;<A HREF="#nested_class_summary">NESTED</A>&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.threerings.whirled.server</FONT>
<BR>
Class SceneRegistry</H2>
<PRE>
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</A>
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>com.threerings.whirled.server.SceneRegistry</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD>com.threerings.crowd.data.LocationCodes, com.threerings.presents.data.InvocationCodes, com.threerings.presents.server.InvocationProvider, <A HREF="../../../../com/threerings/whirled/data/SceneCodes.html" title="interface in com.threerings.whirled.data">SceneCodes</A>, <A HREF="../../../../com/threerings/whirled/server/SceneProvider.html" title="interface in com.threerings.whirled.server">SceneProvider</A></DD>
</DL>
<DL>
<DT><B>Direct Known Subclasses:</B> <DD><A HREF="../../../../com/threerings/whirled/spot/server/SpotSceneRegistry.html" title="class in com.threerings.whirled.spot.server">SpotSceneRegistry</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public class <B>SceneRegistry</B><DT>extends <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A><DT>implements <A HREF="../../../../com/threerings/whirled/data/SceneCodes.html" title="interface in com.threerings.whirled.data">SceneCodes</A>, <A HREF="../../../../com/threerings/whirled/server/SceneProvider.html" title="interface in com.threerings.whirled.server">SceneProvider</A></DL>
</PRE>
<P>
The scene registry is responsible for the management of all scenes. It handles interaction with
the scene repository and ensures that scenes are loaded into memory when needed and flushed from
memory when not needed.
<p> The scene repository also takes care of bridging from the blocking, synchronous world of the
scene repository to the non-blocking asynchronous world of the distributed object event
queue. Thus its interfaces for accessing scenes are structured so as to not block the dobjmgr
thread while waiting for scenes to be read from or written to the repository.
<p><em>Note:</em> All access to the scene registry should take place from the dobjmgr thread.
<P>
<P>
<HR>
<P>
<!-- ======== NESTED CLASS SUMMARY ======== -->
<A NAME="nested_class_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Nested Class Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;interface</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/threerings/whirled/server/SceneRegistry.ConfigFactory.html" title="interface in com.threerings.whirled.server">SceneRegistry.ConfigFactory</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Used to create <CODE>PlaceConfig</CODE> instances for scenes.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;interface</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/threerings/whirled/server/SceneRegistry.ResolutionListener.html" title="interface in com.threerings.whirled.server">SceneRegistry.ResolutionListener</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Because scenes must be loaded from the scene repository and this must not be done on the
dobjmgr thread, the interface for resolving scenes requires that the entity that wishes for
a scene to be resolved implement this callback interface so that it can be notified when a
scene has been loaded and initialized.</TD>
</TR>
</TABLE>
&nbsp;<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_com.threerings.whirled.data.SceneCodes"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from interface com.threerings.whirled.data.<A HREF="../../../../com/threerings/whirled/data/SceneCodes.html" title="interface in com.threerings.whirled.data">SceneCodes</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../com/threerings/whirled/data/SceneCodes.html#SCENE_UPDATE">SCENE_UPDATE</A>, <A HREF="../../../../com/threerings/whirled/data/SceneCodes.html#WHIRLED_GROUP">WHIRLED_GROUP</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_com.threerings.crowd.data.LocationCodes"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from interface com.threerings.crowd.data.LocationCodes</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>ALREADY_THERE, MOVE_IN_PROGRESS, NO_SUCH_PLACE</CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_com.threerings.presents.data.InvocationCodes"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from interface com.threerings.presents.data.InvocationCodes</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>ACCESS_DENIED, E_ACCESS_DENIED, E_INTERNAL_ERROR, GLOBAL_GROUP, INTERNAL_ERROR</CODE></TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../com/threerings/whirled/server/SceneRegistry.html#SceneRegistry(com.threerings.presents.server.InvocationManager)">SceneRegistry</A></B>(com.threerings.presents.server.InvocationManager&nbsp;invmgr)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Constructs a scene registry.</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../com/threerings/whirled/server/SceneManager.html" title="class in com.threerings.whirled.server">SceneManager</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/threerings/whirled/server/SceneRegistry.html#getSceneManager(int)">getSceneManager</A></B>(int&nbsp;sceneId)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Fetches the scene manager associated with the specified scene.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../com/threerings/whirled/server/persist/SceneRepository.html" title="interface in com.threerings.whirled.server.persist">SceneRepository</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/threerings/whirled/server/SceneRegistry.html#getSceneRepository()">getSceneRepository</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a reference to the scene repository in use by this registry.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/threerings/whirled/server/SceneRegistry.html#leaveOccupiedScene(com.threerings.crowd.data.BodyObject)">leaveOccupiedScene</A></B>(com.threerings.crowd.data.BodyObject&nbsp;source)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Ejects the specified body from their current scene and zone.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/threerings/whirled/server/SceneRegistry.html#moveBody(com.threerings.crowd.data.BodyObject, int)">moveBody</A></B>(com.threerings.crowd.data.BodyObject&nbsp;source,
int&nbsp;sceneId)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Ejects the specified body from their current scene and sends them a request to move to the
specified new scene.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/threerings/whirled/server/SceneRegistry.html#moveTo(com.threerings.presents.data.ClientObject, int, int, com.threerings.whirled.client.SceneService.SceneMoveListener)">moveTo</A></B>(com.threerings.presents.data.ClientObject&nbsp;caller,
int&nbsp;sceneId,
int&nbsp;sceneVer,
<A HREF="../../../../com/threerings/whirled/client/SceneService.SceneMoveListener.html" title="interface in com.threerings.whirled.client">SceneService.SceneMoveListener</A>&nbsp;listener)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Handles a <A HREF="../../../../com/threerings/whirled/client/SceneService.html#moveTo(int, int, com.threerings.whirled.client.SceneService.SceneMoveListener)"><CODE>SceneService.moveTo(int, int, com.threerings.whirled.client.SceneService.SceneMoveListener)</CODE></A> request.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/threerings/whirled/server/SceneRegistry.html#resolveScene(int, com.threerings.whirled.server.SceneRegistry.ResolutionListener)">resolveScene</A></B>(int&nbsp;sceneId,
<A HREF="../../../../com/threerings/whirled/server/SceneRegistry.ResolutionListener.html" title="interface in com.threerings.whirled.server">SceneRegistry.ResolutionListener</A>&nbsp;target)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Requests that the specified scene be resolved, which means loaded into the server and
initialized if the scene is not currently active.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/threerings/whirled/server/SceneRegistry.html#where(int)">where</A></B>(int&nbsp;sceneId)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns <A HREF="../../../../com/threerings/whirled/server/SceneManager.html#where()"><CODE>SceneManager.where()</CODE></A> for the specified scene or <code>null:sceneId</code> if
no scene manager exists for that scene.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="SceneRegistry(com.threerings.presents.server.InvocationManager)"><!-- --></A><H3>
SceneRegistry</H3>
<PRE>
<FONT SIZE="-1">@Inject
</FONT>public <B>SceneRegistry</B>(com.threerings.presents.server.InvocationManager&nbsp;invmgr)</PRE>
<DL>
<DD>Constructs a scene registry.
<P>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="getSceneManager(int)"><!-- --></A><H3>
getSceneManager</H3>
<PRE>
public <A HREF="../../../../com/threerings/whirled/server/SceneManager.html" title="class in com.threerings.whirled.server">SceneManager</A> <B>getSceneManager</B>(int&nbsp;sceneId)</PRE>
<DL>
<DD>Fetches the scene manager associated with the specified scene.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>the scene manager for the specified scene or null if no scene manager is loaded for
that scene.</DL>
</DD>
</DL>
<HR>
<A NAME="getSceneRepository()"><!-- --></A><H3>
getSceneRepository</H3>
<PRE>
public <A HREF="../../../../com/threerings/whirled/server/persist/SceneRepository.html" title="interface in com.threerings.whirled.server.persist">SceneRepository</A> <B>getSceneRepository</B>()</PRE>
<DL>
<DD>Returns a reference to the scene repository in use by this registry.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="where(int)"><!-- --></A><H3>
where</H3>
<PRE>
public <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <B>where</B>(int&nbsp;sceneId)</PRE>
<DL>
<DD>Returns <A HREF="../../../../com/threerings/whirled/server/SceneManager.html#where()"><CODE>SceneManager.where()</CODE></A> for the specified scene or <code>null:sceneId</code> if
no scene manager exists for that scene.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="resolveScene(int, com.threerings.whirled.server.SceneRegistry.ResolutionListener)"><!-- --></A><H3>
resolveScene</H3>
<PRE>
public void <B>resolveScene</B>(int&nbsp;sceneId,
<A HREF="../../../../com/threerings/whirled/server/SceneRegistry.ResolutionListener.html" title="interface in com.threerings.whirled.server">SceneRegistry.ResolutionListener</A>&nbsp;target)</PRE>
<DL>
<DD>Requests that the specified scene be resolved, which means loaded into the server and
initialized if the scene is not currently active. The supplied callback instance will be
notified, on the dobjmgr thread, when the scene has been resolved. If the scene is already
active, it will be notified immediately (before the call to <A HREF="../../../../com/threerings/whirled/server/SceneRegistry.html#resolveScene(int, com.threerings.whirled.server.SceneRegistry.ResolutionListener)"><CODE>resolveScene(int, com.threerings.whirled.server.SceneRegistry.ResolutionListener)</CODE></A> returns).
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>sceneId</CODE> - the id of the scene to resolve.<DD><CODE>target</CODE> - a reference to a callback instance that will be notified when the scene has
been resolved (which may be immediately if the scene is already active).</DL>
</DD>
</DL>
<HR>
<A NAME="moveTo(com.threerings.presents.data.ClientObject, int, int, com.threerings.whirled.client.SceneService.SceneMoveListener)"><!-- --></A><H3>
moveTo</H3>
<PRE>
public void <B>moveTo</B>(com.threerings.presents.data.ClientObject&nbsp;caller,
int&nbsp;sceneId,
int&nbsp;sceneVer,
<A HREF="../../../../com/threerings/whirled/client/SceneService.SceneMoveListener.html" title="interface in com.threerings.whirled.client">SceneService.SceneMoveListener</A>&nbsp;listener)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../com/threerings/whirled/server/SceneProvider.html#moveTo(com.threerings.presents.data.ClientObject, int, int, com.threerings.whirled.client.SceneService.SceneMoveListener)">SceneProvider</A></CODE></B></DD>
<DD>Handles a <A HREF="../../../../com/threerings/whirled/client/SceneService.html#moveTo(int, int, com.threerings.whirled.client.SceneService.SceneMoveListener)"><CODE>SceneService.moveTo(int, int, com.threerings.whirled.client.SceneService.SceneMoveListener)</CODE></A> request.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../com/threerings/whirled/server/SceneProvider.html#moveTo(com.threerings.presents.data.ClientObject, int, int, com.threerings.whirled.client.SceneService.SceneMoveListener)">moveTo</A></CODE> in interface <CODE><A HREF="../../../../com/threerings/whirled/server/SceneProvider.html" title="interface in com.threerings.whirled.server">SceneProvider</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="moveBody(com.threerings.crowd.data.BodyObject, int)"><!-- --></A><H3>
moveBody</H3>
<PRE>
public void <B>moveBody</B>(com.threerings.crowd.data.BodyObject&nbsp;source,
int&nbsp;sceneId)</PRE>
<DL>
<DD>Ejects the specified body from their current scene and sends them a request to move to the
specified new scene. This is the scene-equivalent to <CODE>LocationProvider.moveTo(com.threerings.presents.data.ClientObject, int, com.threerings.crowd.client.LocationService.MoveListener)</CODE>.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="leaveOccupiedScene(com.threerings.crowd.data.BodyObject)"><!-- --></A><H3>
leaveOccupiedScene</H3>
<PRE>
public void <B>leaveOccupiedScene</B>(com.threerings.crowd.data.BodyObject&nbsp;source)</PRE>
<DL>
<DD>Ejects the specified body from their current scene and zone. This is the zone equivalent to
<CODE>LocationProvider.leavePlace(com.threerings.presents.data.ClientObject)</CODE>.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/SceneRegistry.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../com/threerings/whirled/server/SceneProvider.html" title="interface in com.threerings.whirled.server"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../com/threerings/whirled/server/SceneRegistry.ConfigFactory.html" title="interface in com.threerings.whirled.server"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?com/threerings/whirled/server/SceneRegistry.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="SceneRegistry.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;<A HREF="#nested_class_summary">NESTED</A>&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
Copyright &#169; 2011. All Rights Reserved.
</BODY>
</HTML>