Thread: [ohla-devel] SF.net SVN: ohla: [11] trunk
Status: Beta
Brought to you by:
mnewcomb
From: <mne...@us...> - 2006-11-10 21:25:47
|
Revision: 11 http://svn.sourceforge.net/ohla/?rev=11&view=rev Author: mnewcomb Date: 2006-11-10 13:25:32 -0800 (Fri, 10 Nov 2006) Log Message: ----------- [ 1594297 ] synchronizationPointAchieved always fail Modified Paths: -------------- trunk/build/intellij/OHLA.iws trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/FederateSynchronizationPoint.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/AnnounceSynchronizationPoint.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/FederationSynchronized.java trunk/rti/src/java/net/sf/ohla/rti1516/federation/TimeKeeper.java trunk/testsuite/src/java/net/sf/ohla/rti1516/FederationManagementTestNG.java trunk/testsuite/src/java/net/sf/ohla/rti1516/TestConstants.java Modified: trunk/build/intellij/OHLA.iws =================================================================== --- trunk/build/intellij/OHLA.iws 2006-11-10 19:52:59 UTC (rev 10) +++ trunk/build/intellij/OHLA.iws 2006-11-10 21:25:32 UTC (rev 11) @@ -183,7 +183,91 @@ <option name="myCurrentFavoritesList" value="OHLA" /> </component> <component name="FileEditorManager"> - <leaf /> + <leaf> + <file leaf-file-name="Federate.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/Federate.java"> + <provider selected="true" editor-type-id="text-editor"> + <state line="3383" column="9" selection-start="98187" selection-end="98187" vertical-scroll-proportion="0.33248082"> + <folding> + <element signature="imports" expanded="true" /> + </folding> + </state> + </provider> + </entry> + </file> + <file leaf-file-name="ObjectManager.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectManager.java"> + <provider selected="true" editor-type-id="text-editor"> + <state line="922" column="14" selection-start="27191" selection-end="27191" vertical-scroll-proportion="-0.3196931"> + <folding /> + </state> + </provider> + </entry> + </file> + <file leaf-file-name="FederationSynchronized.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/callbacks/FederationSynchronized.java"> + <provider selected="true" editor-type-id="text-editor"> + <state line="35" column="13" selection-start="1002" selection-end="1002" vertical-scroll-proportion="0.40526977"> + <folding /> + </state> + </provider> + </entry> + </file> + <file leaf-file-name="FederationManagementTestNG.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/FederationManagementTestNG.java"> + <provider selected="true" editor-type-id="text-editor"> + <state line="71" column="32" selection-start="2190" selection-end="2190" vertical-scroll-proportion="0.76086956"> + <folding /> + </state> + </provider> + </entry> + </file> + <file leaf-file-name="ieee-1516-testng.xml" pinned="false" current="true" current-in-tab="true"> + <entry file="file://$PROJECT_DIR$/../../resources/testsuite/ieee-1516-testng.xml"> + <provider selected="true" editor-type-id="text-editor"> + <state line="47" column="0" selection-start="911" selection-end="1528" vertical-scroll-proportion="0.93601006"> + <folding /> + </state> + </provider> + </entry> + </file> + <file leaf-file-name="FederateAmbassador.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../ieee-1516/src/java/hla/rti1516/FederateAmbassador.java"> + <provider selected="true" editor-type-id="text-editor"> + <state line="27" column="7" selection-start="1154" selection-end="1154" vertical-scroll-proportion="0.33248082"> + <folding /> + </state> + </provider> + </entry> + </file> + <file leaf-file-name="AnnounceSynchronizationPoint.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/callbacks/AnnounceSynchronizationPoint.java"> + <provider selected="true" editor-type-id="text-editor"> + <state line="37" column="28" selection-start="1085" selection-end="1085" vertical-scroll-proportion="0.44792974"> + <folding /> + </state> + </provider> + </entry> + </file> + <file leaf-file-name="TestConstants.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/TestConstants.java"> + <provider selected="true" editor-type-id="text-editor"> + <state line="41" column="72" selection-start="1500" selection-end="1500" vertical-scroll-proportion="0.5759097"> + <folding /> + </state> + </provider> + </entry> + </file> + <file leaf-file-name="FederateSynchronizationPoint.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateSynchronizationPoint.java"> + <provider selected="true" editor-type-id="text-editor"> + <state line="87" column="30" selection-start="2220" selection-end="2220" vertical-scroll-proportion="0.93601006"> + <folding /> + </state> + </provider> + </entry> + </file> + </leaf> </component> <component name="FindManager"> <FindUsagesManager> @@ -301,7 +385,73 @@ <option name="myItemId" value="OHLA.ipr" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="Testsuite" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> + </PATH_ELEMENT> </PATH> + <PATH> + <PATH_ELEMENT> + <option name="myItemId" value="OHLA.ipr" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="Testsuite" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src\java" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src\java\net\sf\ohla" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src\java\net\sf\ohla\rti1516" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + </PATH> + <PATH> + <PATH_ELEMENT> + <option name="myItemId" value="OHLA.ipr" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="Testsuite" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src\java" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src\java\net\sf\ohla" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + </PATH> + <PATH> + <PATH_ELEMENT> + <option name="myItemId" value="OHLA.ipr" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> + </PATH_ELEMENT> + </PATH> </component> <component name="ProjectReloadState"> <option name="STATE" value="0" /> @@ -322,13 +472,29 @@ </component> <component name="PropertiesComponent"> <property name="MemberChooser.copyJavadoc" value="false" /> - <property name="GoToClass.includeLibraries" value="false" /> - <property name="MemberChooser.showClasses" value="true" /> + <property name="cvs_file_history_treeWidth0" value="299" /> + <property name="cvs_file_history_flatWidth2" value="299" /> <property name="MemberChooser.sorted" value="false" /> + <property name="cvs_file_history_treeOrder1" value="1" /> <property name="RunManagerConfig.compileBeforeRunning" value="true" /> + <property name="cvs_file_history_flatOrder0" value="0" /> + <property name="cvs_file_history_treeOrder3" value="3" /> <property name="GoToFile.includeJavaFiles" value="false" /> + <property name="cvs_file_history_flatOrder1" value="1" /> + <property name="cvs_file_history_flatWidth1" value="299" /> + <property name="cvs_file_history_treeWidth1" value="299" /> + <property name="cvs_file_history_treeOrder2" value="2" /> + <property name="cvs_file_history_treeWidth3" value="298" /> + <property name="GoToClass.includeLibraries" value="false" /> + <property name="cvs_file_history_flatOrder2" value="2" /> + <property name="MemberChooser.showClasses" value="true" /> + <property name="cvs_file_history_flatWidth0" value="299" /> + <property name="cvs_file_history_flatWidth3" value="298" /> + <property name="cvs_file_history_treeWidth2" value="299" /> + <property name="cvs_file_history_flatOrder3" value="3" /> <property name="GoToClass.toSaveIncludeLibraries" value="false" /> <property name="RunManagerConfig.showSettingsBeforeRunnig" value="true" /> + <property name="cvs_file_history_treeOrder0" value="0" /> </component> <component name="ReadonlyStatusHandler"> <option name="SHOW_DIALOG" value="true" /> @@ -345,22 +511,33 @@ <component name="RestoreUpdateTree" /> <component name="RunManager"> <activeType name="Application" /> - <configuration selected="false" default="true" type="JUnit" factoryName="JUnit"> + <configuration selected="false" default="true" type="TestNG" factoryName="TestNG"> <module name="" /> <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" /> <option name="ALTERNATIVE_JRE_PATH" /> + <option name="SUITE_NAME" /> <option name="PACKAGE_NAME" /> <option name="MAIN_CLASS_NAME" /> <option name="METHOD_NAME" /> - <option name="TEST_OBJECT" value="class" /> + <option name="GROUP_NAME" /> + <option name="TEST_OBJECT" value="CLASS" /> <option name="VM_PARAMETERS" /> <option name="PARAMETERS" /> - <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" /> + <option name="WORKING_DIRECTORY" /> <option name="ADDITIONAL_CLASS_PATH" /> <option name="TEST_SEARCH_SCOPE"> <value defaultName="wholeProject" /> </option> + <option name="PROPERTIES_FILE" /> + <properties /> </configuration> + <configuration selected="false" default="true" type="Remote" factoryName="Remote"> + <option name="USE_SOCKET_TRANSPORT" value="true" /> + <option name="SERVER_MODE" value="false" /> + <option name="SHMEM_ADDRESS" value="javadebug" /> + <option name="HOST" value="localhost" /> + <option name="PORT" value="5005" /> + </configuration> <configuration selected="false" default="true" type="Applet" factoryName="Applet"> <module name="" /> <option name="MAIN_CLASS_NAME" /> @@ -373,41 +550,58 @@ <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" /> <option name="ALTERNATIVE_JRE_PATH" /> </configuration> - <configuration selected="false" default="true" type="TestNG" factoryName="TestNG"> + <configuration selected="false" default="true" type="Application" factoryName="Application"> + <option name="MAIN_CLASS_NAME" /> + <option name="VM_PARAMETERS" /> + <option name="PROGRAM_PARAMETERS" /> + <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" /> + <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" /> + <option name="ALTERNATIVE_JRE_PATH" /> <module name="" /> + </configuration> + <configuration selected="false" default="true" type="JUnit" factoryName="JUnit"> + <module name="" /> <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" /> <option name="ALTERNATIVE_JRE_PATH" /> - <option name="SUITE_NAME" /> <option name="PACKAGE_NAME" /> <option name="MAIN_CLASS_NAME" /> <option name="METHOD_NAME" /> - <option name="GROUP_NAME" /> - <option name="TEST_OBJECT" value="CLASS" /> + <option name="TEST_OBJECT" value="class" /> <option name="VM_PARAMETERS" /> <option name="PARAMETERS" /> - <option name="WORKING_DIRECTORY" /> + <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" /> <option name="ADDITIONAL_CLASS_PATH" /> <option name="TEST_SEARCH_SCOPE"> <value defaultName="wholeProject" /> </option> - <option name="PROPERTIES_FILE" /> - <properties /> </configuration> - <configuration selected="false" default="true" type="Remote" factoryName="Remote"> - <option name="USE_SOCKET_TRANSPORT" value="true" /> - <option name="SERVER_MODE" value="false" /> - <option name="SHMEM_ADDRESS" value="javadebug" /> - <option name="HOST" value="localhost" /> - <option name="PORT" value="5005" /> + <configuration selected="false" default="false" name="RTI" type="Application" factoryName="Application"> + <option name="MAIN_CLASS_NAME" value="net.sf.ohla.rti1516.RTI" /> + <option name="VM_PARAMETERS" value="-Dohla.rti.host=localhost -Dohla.rti.port=5000 -ea -server" /> + <option name="PROGRAM_PARAMETERS" value="" /> + <option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" /> + <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" /> + <option name="ALTERNATIVE_JRE_PATH" value="" /> + <module name="RTI" /> + <RunnerSettings RunnerId="Debug"> + <option name="DEBUG_PORT" value="2738" /> + <option name="TRANSPORT" value="0" /> + <option name="LOCAL" value="true" /> + </RunnerSettings> + <RunnerSettings RunnerId="Run" /> + <ConfigurationWrapper RunnerId="Debug" /> + <ConfigurationWrapper RunnerId="Run" /> </configuration> - <configuration selected="false" default="true" type="Application" factoryName="Application"> - <option name="MAIN_CLASS_NAME" /> - <option name="VM_PARAMETERS" /> - <option name="PROGRAM_PARAMETERS" /> - <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" /> + <configuration selected="true" default="false" name="TimeKeeper" type="Application" factoryName="Application"> + <option name="MAIN_CLASS_NAME" value="net.sf.ohla.rti1516.federation.TimeKeeper" /> + <option name="VM_PARAMETERS" value="" /> + <option name="PROGRAM_PARAMETERS" value="" /> + <option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" /> <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" /> - <option name="ALTERNATIVE_JRE_PATH" /> - <module name="" /> + <option name="ALTERNATIVE_JRE_PATH" value="" /> + <module name="RTI" /> + <RunnerSettings RunnerId="Run" /> + <ConfigurationWrapper RunnerId="Run" /> </configuration> <configuration selected="false" default="false" name="IEEE 1516 Testsuite" type="TestNG" factoryName="TestNG"> <module name="Testsuite" /> @@ -428,14 +622,14 @@ </option> <option name="PROPERTIES_FILE" value="" /> <properties /> - <RunnerSettings RunnerId="Run" /> <RunnerSettings RunnerId="Debug"> <option name="DEBUG_PORT" value="2019" /> <option name="TRANSPORT" value="0" /> <option name="LOCAL" value="true" /> </RunnerSettings> + <RunnerSettings RunnerId="Run" /> + <ConfigurationWrapper RunnerId="Debug" /> <ConfigurationWrapper RunnerId="Run" /> - <ConfigurationWrapper RunnerId="Debug" /> </configuration> <configuration selected="true" default="false" name="HLA 1.3 Testsuite" type="TestNG" factoryName="TestNG"> <module name="RTI" /> @@ -457,23 +651,6 @@ <option name="PROPERTIES_FILE" value="" /> <properties /> </configuration> - <configuration selected="true" default="false" name="RTI" type="Application" factoryName="Application"> - <option name="MAIN_CLASS_NAME" value="net.sf.ohla.rti1516.RTI" /> - <option name="VM_PARAMETERS" value="-Dohla.rti.host=localhost -Dohla.rti.port=5000 -ea -server" /> - <option name="PROGRAM_PARAMETERS" value="" /> - <option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" /> - <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" /> - <option name="ALTERNATIVE_JRE_PATH" value="" /> - <module name="RTI" /> - <RunnerSettings RunnerId="Run" /> - <RunnerSettings RunnerId="Debug"> - <option name="DEBUG_PORT" value="2738" /> - <option name="TRANSPORT" value="0" /> - <option name="LOCAL" value="true" /> - </RunnerSettings> - <ConfigurationWrapper RunnerId="Run" /> - <ConfigurationWrapper RunnerId="Debug" /> - </configuration> </component> <component name="ScopeViewComponent"> <subPane subId="Project"> @@ -527,6 +704,7 @@ <option name="USER" value="" /> <option name="PASSWORD" value="" /> <option name="PROCESS_UNRESOLVED" value="false" /> + <configuration useDefault="true">D:\Profiles\p57487\Application Data\Subversion</configuration> </component> <component name="TodoView" selected-index="0"> <todo-panel id="selected-file"> @@ -548,7 +726,7 @@ <layout> <window_info id="CVS" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="8" /> <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.32791588" order="7" /> - <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="docked" type="docked" visible="true" weight="0.2524272" order="0" /> + <window_info id="Project" active="true" anchor="left" auto_hide="false" internal_type="docked" type="docked" visible="true" weight="0.29773462" order="0" /> <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.34367815" order="1" /> <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="1" /> <window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.32413793" order="8" /> @@ -558,13 +736,13 @@ <window_info id="Dependency Viewer" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.32988507" order="8" /> <window_info id="Metrics" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="8" /> <window_info id="Favorites" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.32928804" order="3" /> - <window_info id="Ant Build" active="true" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="true" weight="0.17394821" order="1" /> + <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="true" weight="0.10760518" order="1" /> <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.27816093" order="2" /> <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="2" /> <window_info id="File View" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="3" /> <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.40114942" order="4" /> <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.3998378" order="0" /> - <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="8" /> + <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.32988507" order="8" /> <window_info id="UI Designer" active="false" anchor="left" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="3" /> <window_info id="IDEtalk" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="3" /> <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="0" /> @@ -601,7 +779,7 @@ <option name="CHECK_CODE_SMELLS_BEFORE_PROJECT_COMMIT" value="true" /> <option name="PUT_FOCUS_INTO_COMMENT" value="false" /> <option name="FORCE_NON_EMPTY_COMMENT" value="false" /> - <option name="LAST_COMMIT_MESSAGE" /> + <option name="LAST_COMMIT_MESSAGE" value="corrected some variable names" /> <option name="SAVE_LAST_COMMIT_MESSAGE" value="true" /> <option name="CHECKIN_DIALOG_SPLITTER_PROPORTION" value="0.8" /> <option name="OPTIMIZE_IMPORTS_BEFORE_PROJECT_COMMIT" value="false" /> @@ -611,10 +789,16 @@ <option name="FILE_HISTORY_DIALOG_COMMENTS_SPLITTER_PROPORTION" value="0.8" /> <option name="FILE_HISTORY_DIALOG_SPLITTER_PROPORTION" value="0.5" /> <option name="ERROR_OCCURED" value="false" /> - <option name="ACTIVE_VCS_NAME" /> + <option name="ACTIVE_VCS_NAME" value="svn" /> <option name="UPDATE_GROUP_BY_PACKAGES" value="false" /> <option name="SHOW_FILE_HISTORY_AS_TREE" value="false" /> <option name="FILE_HISTORY_SPLITTER_PROPORTION" value="0.6" /> + <MESSAGE value="fixed incorrect compareTo methods and added @Override tags" /> + <MESSAGE value="added target to create javadocs" /> + <MESSAGE value="spec says that if no synchronization set is supplied OR it is empty, than all joined federates are part of the synchronization set" /> + <MESSAGE value="adding documentation" /> + <MESSAGE value="[ 1594262 ] Allow to restart RTI faster" /> + <MESSAGE value="corrected some variable names" /> </component> <component name="VssConfiguration"> <option name="CLIENT_PATH" value="" /> @@ -695,109 +879,109 @@ <option name="myLastEditedConfigurable" /> </component> <component name="editorHistoryManager"> - <entry file="file://$PROJECT_DIR$/../../resources/testsuite/ieee-1516-testng.xml"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/callbacks/DiscoverObjectInstance.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="48" column="0" selection-start="1537" selection-end="1537" vertical-scroll-proportion="1.4031311"> + <state line="48" column="20" selection-start="1454" selection-end="1454" vertical-scroll-proportion="0.6612296"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectManager.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="366" column="8" selection-start="13839" selection-end="13839" vertical-scroll-proportion="1.3307241"> + <state line="922" column="14" selection-start="27191" selection-end="27191" vertical-scroll-proportion="-0.3196931"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../build.xml"> + <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/DeclarationManagementTestNG.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="245" column="2" selection-start="8772" selection-end="8772" vertical-scroll-proportion="0.5088063"> + <state line="31" column="13" selection-start="1121" selection-end="1121" vertical-scroll-proportion="-0.36956522"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../CHANGELOG.txt"> + <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/TestConstants.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="9" column="8" selection-start="194" selection-end="194" vertical-scroll-proportion="0.2994129"> + <state line="41" column="72" selection-start="1500" selection-end="1500" vertical-scroll-proportion="0.5759097"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../resources/testsuite/hla-1.3-testng.xml"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/RTI.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="37" column="13" selection-start="1258" selection-end="1258" vertical-scroll-proportion="0.6487148"> + <state line="59" column="35" selection-start="2126" selection-end="2126" vertical-scroll-proportion="0.13682865"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../TESTSUITE.txt"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/callbacks/AnnounceSynchronizationPoint.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="2" column="8" selection-start="25" selection-end="25" vertical-scroll-proportion="0.04161567"> + <state line="37" column="28" selection-start="1085" selection-end="1085" vertical-scroll-proportion="0.44792974"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/fdd/Attribute.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/Federate.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="153" column="8" selection-start="3861" selection-end="3861" vertical-scroll-proportion="0.21419829"> - <folding /> + <state line="3383" column="9" selection-start="98187" selection-end="98187" vertical-scroll-proportion="0.33248082"> + <folding> + <element signature="imports" expanded="true" /> + </folding> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../ieee-1516/src/java/hla/rti1516/RangeBounds.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateSynchronizationPoint.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="7" column="14" selection-start="125" selection-end="125" vertical-scroll-proportion="0.23287672"> + <state line="87" column="30" selection-start="2220" selection-end="2220" vertical-scroll-proportion="0.93601006"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/fdd/Dimension.java"> + <entry file="file://$PROJECT_DIR$/../../ieee-1516/src/java/hla/rti1516/FederateAmbassador.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="65" column="0" selection-start="1738" selection-end="1738" vertical-scroll-proportion="0.52019584"> + <state line="27" column="7" selection-start="1154" selection-end="1154" vertical-scroll-proportion="0.33248082"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/fdd/FDD.java"> + <entry file="file://$PROJECT_DIR$/../../ieee-1516/src/java/hla/rti1516/jlc/NullFederateAmbassador.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="71" column="32" selection-start="2454" selection-end="2454" vertical-scroll-proportion="0.20807834"> + <state line="55" column="0" selection-start="2163" selection-end="2163" vertical-scroll-proportion="0.19565217"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/RegionManager.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/callbacks/FederationSynchronized.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="326" column="0" selection-start="9238" selection-end="9238" vertical-scroll-proportion="0.14565483"> + <state line="35" column="13" selection-start="1002" selection-end="1002" vertical-scroll-proportion="0.40526977"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/TimeKeeper.java"> + <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/BaseTestNG.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="102" column="0" selection-start="2899" selection-end="2899" vertical-scroll-proportion="0.39650872"> + <state line="32" column="22" selection-start="996" selection-end="996" vertical-scroll-proportion="0.14930992"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/OwnershipManagementTestNG.java"> + <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="399" column="0" selection-start="14640" selection-end="14640" vertical-scroll-proportion="0.20807834"> + <state line="88" column="0" selection-start="3103" selection-end="3103" vertical-scroll-proportion="0.27728984"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti/OwnershipManagementTestNG.java"> + <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/FederationManagementTestNG.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="403" column="0" selection-start="14385" selection-end="14385" vertical-scroll-proportion="0.20807834"> - <folding> - <element signature="imports" expanded="true" /> - </folding> + <state line="71" column="32" selection-start="2190" selection-end="2190" vertical-scroll-proportion="0.76086956"> + <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../LICENSE.txt"> + <entry file="file://$PROJECT_DIR$/../../resources/testsuite/ieee-1516-testng.xml"> <provider selected="true" editor-type-id="text-editor"> - <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0"> + <state line="47" column="0" selection-start="911" selection-end="1528" vertical-scroll-proportion="0.93601006"> <folding /> </state> </provider> Modified: trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java 2006-11-10 19:52:59 UTC (rev 10) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java 2006-11-10 21:25:32 UTC (rev 11) @@ -226,6 +226,7 @@ import hla.rti1516.TimeRegulationAlreadyEnabled; import hla.rti1516.TimeRegulationIsNotEnabled; import hla.rti1516.TransportationType; +import hla.rti1516.FederateInternalError; public class Federate { @@ -3380,6 +3381,72 @@ } } + public void announceSynchronizationPoint(String label, byte[] tag) + { + FederateSynchronizationPoint federateSynchronizationPoint; + + synchronizationPointLock.lock(); + try + { + federateSynchronizationPoint = synchronizationPoints.get(label); + if (federateSynchronizationPoint == null) + { + federateSynchronizationPoint = + new FederateSynchronizationPoint(label, tag); + synchronizationPoints.put(label, federateSynchronizationPoint); + } + } + finally + { + synchronizationPointLock.unlock(); + } + + federateSynchronizationPoint.announceSynchronizationPoint(); + + try + { + federateAmbassador.announceSynchronizationPoint(label, tag); + } + catch (FederateInternalError fie) + { + log.warn(String.format( + "federate could not process announcement of synchronization point: %s", + label), fie); + } + } + + public void federationSynchronized(String label) + { + FederateSynchronizationPoint federateSynchronizationPoint; + + synchronizationPointLock.lock(); + try + { + // remove the synchronization point + // + federateSynchronizationPoint = synchronizationPoints.remove(label); + } + finally + { + synchronizationPointLock.unlock(); + } + + assert federateSynchronizationPoint != null; + + federateSynchronizationPoint.federationSynchronized(); + + try + { + federateAmbassador.federationSynchronized(label); + } + catch (FederateInternalError fie) + { + log.warn(String.format( + "federate could not process federation synchronization: %s", + label), fie); + } + } + public void discoverObjectInstance( ObjectInstanceHandle objectInstanceHandle, ObjectClassHandle objectClassHandle) Modified: trunk/rti/src/java/net/sf/ohla/rti1516/federate/FederateSynchronizationPoint.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federate/FederateSynchronizationPoint.java 2006-11-10 19:52:59 UTC (rev 10) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federate/FederateSynchronizationPoint.java 2006-11-10 21:25:32 UTC (rev 11) @@ -27,11 +27,17 @@ protected FederateHandleSet federateHandles; protected State state = State.ATTEMPTING_TO_REGISTER_SYNCH_POINT; + public FederateSynchronizationPoint(String label, byte[] tag) + { + this.label = label; + this.tag = tag; + } + public FederateSynchronizationPoint(String label, byte[] tag, FederateHandleSet federateHandles) { - this.label = label; - this.tag = tag; + this(label, tag); + this.federateHandles = federateHandles; } @@ -61,7 +67,7 @@ state = State.NO_ACTIVITY; } - public void announceSynchronizationPoint(String label, byte[] tag) + public void announceSynchronizationPoint() { state = State.MOVING_TO_SYNCH_POINT; } @@ -77,6 +83,11 @@ state = State.WAITING_FOR_REST_OF_FEDERATION_TO_SYNCHRONIZE; } + public void federationSynchronized() + { + state = State.NO_ACTIVITY; + } + protected enum State { NO_ACTIVITY, ATTEMPTING_TO_REGISTER_SYNCH_POINT, MOVING_TO_SYNCH_POINT, Modified: trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/AnnounceSynchronizationPoint.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/AnnounceSynchronizationPoint.java 2006-11-10 19:52:59 UTC (rev 10) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/AnnounceSynchronizationPoint.java 2006-11-10 21:25:32 UTC (rev 11) @@ -35,6 +35,6 @@ public void execute(Federate federate) throws FederateInternalError { - federate.getFederateAmbassador().announceSynchronizationPoint(label, tag); + federate.announceSynchronizationPoint(label, tag); } } Modified: trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/FederationSynchronized.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/FederationSynchronized.java 2006-11-10 19:52:59 UTC (rev 10) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/FederationSynchronized.java 2006-11-10 21:25:32 UTC (rev 11) @@ -33,6 +33,6 @@ public void execute(Federate federate) throws FederateInternalError { - federate.getFederateAmbassador().federationSynchronized(label); + federate.federationSynchronized(label); } } Modified: trunk/rti/src/java/net/sf/ohla/rti1516/federation/TimeKeeper.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federation/TimeKeeper.java 2006-11-10 19:52:59 UTC (rev 10) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federation/TimeKeeper.java 2006-11-10 21:25:32 UTC (rev 11) @@ -27,12 +27,13 @@ { this.logicalTimeFactory = logicalTimeFactory; + time = logicalTimeFactory.makeInitial(); minAdvanceRequest = logicalTimeFactory.makeFinal(); } public synchronized void timeAdvanceRequest(LogicalTime time, TimeClient client) { - System.out.printf("%s requesting advance to %d\n", client, time); + System.out.printf("%s requesting advance to %s\n", client, time); if (this.time.compareTo(time) > 0) { @@ -90,9 +91,14 @@ TimeClient tc = new TimeClient(new Integer64TimeInterval(3000), false); TimeClient tc2 = new TimeClient(new Integer64TimeInterval(5000), true); // TimeClient tc3 = new TimeClient(35000); + + tc.timeAdvanceGrant(time); + tc2.timeAdvanceGrant(time); + tc.start(); tc2.start(); // tc3.start(); + new Thread() { public void run() @@ -100,7 +106,7 @@ int i = 0; while (true) { - System.out.printf("[%d] %d\n", i++, time); + System.out.printf("[%d] %s\n", i++, time); try { Thread.sleep(1000); @@ -134,7 +140,7 @@ public synchronized void timeAdvanceGrant(LogicalTime time) { - System.out.printf("%s advance granted to %d\n", this, time); + System.out.printf("%s advance granted to %s\n", this, time); this.time = time; advanceGranted = true; notifyAll(); Modified: trunk/testsuite/src/java/net/sf/ohla/rti1516/FederationManagementTestNG.java =================================================================== --- trunk/testsuite/src/java/net/sf/ohla/rti1516/FederationManagementTestNG.java 2006-11-10 19:52:59 UTC (rev 10) +++ trunk/testsuite/src/java/net/sf/ohla/rti1516/FederationManagementTestNG.java 2006-11-10 21:25:32 UTC (rev 11) @@ -18,7 +18,15 @@ import java.net.URL; +import java.util.Set; +import java.util.HashSet; +import java.util.Map; +import java.util.HashMap; +import java.util.List; +import java.util.ArrayList; + import org.testng.annotations.Test; +import org.testng.annotations.BeforeClass; import hla.rti1516.CouldNotOpenFDD; import hla.rti1516.ErrorReadingFDD; @@ -26,6 +34,9 @@ import hla.rti1516.FederateNotExecutionMember; import hla.rti1516.FederationExecutionAlreadyExists; import hla.rti1516.FederationExecutionDoesNotExist; +import hla.rti1516.RTIambassador; +import hla.rti1516.FederateInternalError; +import hla.rti1516.SynchronizationPointFailureReason; import static hla.rti1516.ResignAction.NO_ACTION; import hla.rti1516.jlc.NullFederateAmbassador; @@ -33,6 +44,23 @@ public class FederationManagementTestNG extends BaseTestNG { + protected List<TestFederateAmbassador> federateAmbassadors = + new ArrayList<TestFederateAmbassador>(3); + + public FederationManagementTestNG() + { + super(3); + } + + @BeforeClass + public void setup() + throws Exception + { + federateAmbassadors.add(new TestFederateAmbassador(rtiAmbassadors.get(0))); + federateAmbassadors.add(new TestFederateAmbassador(rtiAmbassadors.get(1))); + federateAmbassadors.add(new TestFederateAmbassador(rtiAmbassadors.get(2))); + } + @Test public void testCreateFederationExecution() throws Exception @@ -91,7 +119,7 @@ throws Exception { rtiAmbassadors.get(0).joinFederationExecution( - FEDERATE_TYPE, FEDERATION_NAME, new NullFederateAmbassador(), null); + FEDERATE_TYPE, FEDERATION_NAME, federateAmbassadors.get(0), null); } @Test(dependsOnMethods = {"testJoinFederationExecution"}, @@ -103,7 +131,7 @@ FEDERATE_TYPE, FEDERATION_NAME, new NullFederateAmbassador(), null); } - @Test(dependsOnMethods = {"testJoinFederationExecutionAgain"}) + @Test(dependsOnMethods = {"testRegisterFederationSynchronizationPoint"}) public void testResignFederationExecution() throws Exception { @@ -125,4 +153,132 @@ { rtiAmbassadors.get(0).resignFederationExecution(NO_ACTION); } + + @Test(dependsOnMethods = {"testJoinFederationExecutionAgain"}) + public void testRegisterFederationSynchronizationPoint() + throws Exception + { + rtiAmbassadors.get(1).joinFederationExecution( + FEDERATE_TYPE + "2", FEDERATION_NAME, federateAmbassadors.get(1), null); + rtiAmbassadors.get(2).joinFederationExecution( + FEDERATE_TYPE + "3", FEDERATION_NAME, federateAmbassadors.get(2), null); + + rtiAmbassadors.get(0).registerFederationSynchronizationPoint( + SYNCHRONIZATION_POINT_1, null); + + federateAmbassadors.get(0).checkSynchronizationPointRegistrationSucceeded( + SYNCHRONIZATION_POINT_1); + + federateAmbassadors.get(0).checkAnnouncedSynchronizationPoint( + SYNCHRONIZATION_POINT_1); + federateAmbassadors.get(1).checkAnnouncedSynchronizationPoint( + SYNCHRONIZATION_POINT_1); + federateAmbassadors.get(2).checkAnnouncedSynchronizationPoint( + SYNCHRONIZATION_POINT_1); + + rtiAmbassadors.get(0).synchronizationPointAchieved(SYNCHRONIZATION_POINT_1); + rtiAmbassadors.get(1).synchronizationPointAchieved(SYNCHRONIZATION_POINT_1); + rtiAmbassadors.get(2).synchronizationPointAchieved(SYNCHRONIZATION_POINT_1); + + federateAmbassadors.get(0).checkFederationSynchronized( + SYNCHRONIZATION_POINT_1); + federateAmbassadors.get(1).checkFederationSynchronized( + SYNCHRONIZATION_POINT_1); + federateAmbassadors.get(2).checkFederationSynchronized( + SYNCHRONIZATION_POINT_1); + } + + protected static class TestFederateAmbassador + extends NullFederateAmbassador + { + protected RTIambassador rtiAmbassador; + + protected Set<String> successfullyRegisteredSynchronizationPoints = + new HashSet<String>(); + protected Map<String, SynchronizationPointFailureReason> unsuccessfullyRegisteredSynchronizationPoints = + new HashMap<String, SynchronizationPointFailureReason>(); + protected Set<String> announcedSynchronizationPoints = + new HashSet<String>(); + protected Set<String> federationSynchronized = new HashSet<String>(); + + public TestFederateAmbassador(RTIambassador rtiAmbassador) + { + this.rtiAmbassador = rtiAmbassador; + } + + public void checkSynchronizationPointRegistrationSucceeded(String label) + throws Exception + { + for (int i = 0; + i < 5 && + !successfullyRegisteredSynchronizationPoints.contains(label); i++) + { + rtiAmbassador.evokeMultipleCallbacks(.1, 1.0); + } + assert successfullyRegisteredSynchronizationPoints.contains(label); + } + + public void checkSynchronizationPointRegistrationFailed( + String label, SynchronizationPointFailureReason reason) + throws Exception + { + for (int i = 0; + i < 5 && + !unsuccessfullyRegisteredSynchronizationPoints.containsKey(label); + i++) + { + rtiAmbassador.evokeMultipleCallbacks(.1, 1.0); + } + assert reason == unsuccessfullyRegisteredSynchronizationPoints.get(label); + } + + public void checkAnnouncedSynchronizationPoint(String label) + throws Exception + { + for (int i = 0; i < 5 && !announcedSynchronizationPoints.contains(label); i++) + { + rtiAmbassador.evokeMultipleCallbacks(.1, 1.0); + } + assert announcedSynchronizationPoints.contains(label); + } + + public void checkFederationSynchronized(String label) + throws Exception + { + for (int i = 0; i < 5 && !federationSynchronized.contains(label); i++) + { + rtiAmbassador.evokeMultipleCallbacks(.1, 1.0); + } + assert federationSynchronized.contains(label); + } + + @Override + public void synchronizationPointRegistrationSucceeded(String label) + throws FederateInternalError + { + successfullyRegisteredSynchronizationPoints.add(label); + } + + @Override + public void synchronizationPointRegistrationFailed( + String label, SynchronizationPointFailureReason reason) + throws FederateInternalError + { + unsuccessfullyRegisteredSynchronizationPoints.put(label, reason); + } + + @Override + public void announceSynchronizationPoint(String label, byte[] tag) + throws FederateInternalError + { + announcedSynchronizationPoints.add(label); + } + + @Override + public void federationSynchronized(String label) + throws FederateInternalError + { + federationSynchronized.add(label); + } + } } Modified: trunk/testsuite/src/java/net/sf/ohla/rti1516/TestConstants.java =================================================================== --- trunk/testsuite/src/java/net/sf/ohla/rti1516/TestConstants.java 2006-11-10 19:52:59 UTC (rev 10) +++ trunk/testsuite/src/java/net/sf/ohla/rti1516/TestConstants.java 2006-11-10 21:25:32 UTC (rev 11) @@ -38,6 +38,9 @@ static final String FEDERATE_TYPE = "Test Federate"; + static final String SYNCHRONIZATION_POINT_1 = "Synchronization Point 1"; + static final String SYNCHRONIZATION_POINT_2 = "Synchronization Point 2"; + static final String TEST_OBJECT = "TestObject"; static final String TEST_OBJECT2 = "TestObject.TestObject2"; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mne...@us...> - 2006-11-11 03:49:44
|
Revision: 16 http://svn.sourceforge.net/ohla/?rev=16&view=rev Author: mnewcomb Date: 2006-11-10 19:49:36 -0800 (Fri, 10 Nov 2006) Log Message: ----------- renamed some variables Modified Paths: -------------- trunk/hla-1.3/src/java/hla/rti/RTIambassador.java trunk/rti/src/java/net/sf/ohla/rti/OHLARTIambassador.java Modified: trunk/hla-1.3/src/java/hla/rti/RTIambassador.java =================================================================== --- trunk/hla-1.3/src/java/hla/rti/RTIambassador.java 2006-11-11 03:36:17 UTC (rev 15) +++ trunk/hla-1.3/src/java/hla/rti/RTIambassador.java 2006-11-11 03:49:36 UTC (rev 16) @@ -40,7 +40,7 @@ throws SynchronizationLabelNotAnnounced, FederateNotExecutionMember, SaveInProgress, RestoreInProgress, RTIinternalError; - void requestFederationSave(String label, LogicalTime time) + void requestFederationSave(String label, LogicalTime saveTime) throws FederationTimeAlreadyPassed, InvalidFederationTime, FederateNotExecutionMember, SaveInProgress, RestoreInProgress, RTIinternalError; Modified: trunk/rti/src/java/net/sf/ohla/rti/OHLARTIambassador.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti/OHLARTIambassador.java 2006-11-11 03:36:17 UTC (rev 15) +++ trunk/rti/src/java/net/sf/ohla/rti/OHLARTIambassador.java 2006-11-11 03:49:36 UTC (rev 16) @@ -454,14 +454,14 @@ } } - public void requestFederationSave(String label, LogicalTime time) + public void requestFederationSave(String label, LogicalTime saveTime) throws FederationTimeAlreadyPassed, InvalidFederationTime, FederateNotExecutionMember, SaveInProgress, RestoreInProgress, RTIinternalError { try { - rtiAmbassador.requestFederationSave(label, convert(time)); + rtiAmbassador.requestFederationSave(label, convert(saveTime)); } catch (LogicalTimeAlreadyPassed ltap) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mne...@us...> - 2006-11-11 03:56:50
|
Revision: 17 http://svn.sourceforge.net/ohla/?rev=17&view=rev Author: mnewcomb Date: 2006-11-10 19:56:13 -0800 (Fri, 10 Nov 2006) Log Message: ----------- created a FederateAmbassadorInterceptor to handle all callbacks on behalf of the Federate Modified Paths: -------------- trunk/build/intellij/OHLA.iws trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/FederateSave.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/AnnounceSynchronizationPoint.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/AttributeIsNotOwned.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/AttributeIsOwnedByRTI.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/AttributeOwnershipAcquisitionNotification.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/AttributeOwnershipUnavailable.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/AttributesInScope.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/AttributesOutOfScope.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/Callback.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/CallbackManager.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/ConfirmAttributeOwnershipAcquisitionCancellation.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/DiscoverObjectInstance.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/FederationNotRestored.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/FederationNotSaved.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/FederationRestoreBegun.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/FederationRestoreStatusResponse.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/FederationRestored.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/FederationSaveStatusResponse.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/FederationSaved.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/FederationSynchronized.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/InformAttributeOwnership.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/InitiateFederateRestore.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/InitiateFederateSave.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/ObjectInstanceNameReservationFailed.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/ObjectInstanceNameReservationSucceeded.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/ProvideAttributeValueUpdate.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/ReceiveInteraction.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/ReflectAttributeValues.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/RemoveObjectInstance.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/RequestAttributeOwnershipAssumption.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/RequestAttributeOwnershipRelease.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/RequestDivestitureConfirmation.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/RequestFederationRestoreFailed.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/RequestFederationRestoreSucceeded.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/RequestRetraction.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/StartRegistrationForObjectClass.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/StopRegistrationForObjectClass.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/SynchronizationPointRegistrationFailed.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/SynchronizationPointRegistrationSucceeded.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/TimeAdvanceGrant.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/TimeConstrainedEnabled.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/TimeRegulationEnabled.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/TurnInteractionsOff.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/TurnInteractionsOn.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/TurnUpdatesOffForObjectInstance.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/TurnUpdatesOnForObjectInstance.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectManager.java Modified: trunk/build/intellij/OHLA.iws =================================================================== --- trunk/build/intellij/OHLA.iws 2006-11-11 03:49:36 UTC (rev 16) +++ trunk/build/intellij/OHLA.iws 2006-11-11 03:56:13 UTC (rev 17) @@ -183,91 +183,7 @@ <option name="myCurrentFavoritesList" value="OHLA" /> </component> <component name="FileEditorManager"> - <leaf> - <file leaf-file-name="Federate.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/Federate.java"> - <provider selected="true" editor-type-id="text-editor"> - <state line="3383" column="9" selection-start="98187" selection-end="98187" vertical-scroll-proportion="0.33248082"> - <folding> - <element signature="imports" expanded="true" /> - </folding> - </state> - </provider> - </entry> - </file> - <file leaf-file-name="ObjectManager.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectManager.java"> - <provider selected="true" editor-type-id="text-editor"> - <state line="922" column="14" selection-start="27191" selection-end="27191" vertical-scroll-proportion="-0.3196931"> - <folding /> - </state> - </provider> - </entry> - </file> - <file leaf-file-name="FederationSynchronized.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/callbacks/FederationSynchronized.java"> - <provider selected="true" editor-type-id="text-editor"> - <state line="35" column="13" selection-start="1002" selection-end="1002" vertical-scroll-proportion="0.40526977"> - <folding /> - </state> - </provider> - </entry> - </file> - <file leaf-file-name="FederationManagementTestNG.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/FederationManagementTestNG.java"> - <provider selected="true" editor-type-id="text-editor"> - <state line="71" column="32" selection-start="2190" selection-end="2190" vertical-scroll-proportion="0.76086956"> - <folding /> - </state> - </provider> - </entry> - </file> - <file leaf-file-name="ieee-1516-testng.xml" pinned="false" current="true" current-in-tab="true"> - <entry file="file://$PROJECT_DIR$/../../resources/testsuite/ieee-1516-testng.xml"> - <provider selected="true" editor-type-id="text-editor"> - <state line="47" column="0" selection-start="911" selection-end="1528" vertical-scroll-proportion="0.93601006"> - <folding /> - </state> - </provider> - </entry> - </file> - <file leaf-file-name="FederateAmbassador.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../ieee-1516/src/java/hla/rti1516/FederateAmbassador.java"> - <provider selected="true" editor-type-id="text-editor"> - <state line="27" column="7" selection-start="1154" selection-end="1154" vertical-scroll-proportion="0.33248082"> - <folding /> - </state> - </provider> - </entry> - </file> - <file leaf-file-name="AnnounceSynchronizationPoint.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/callbacks/AnnounceSynchronizationPoint.java"> - <provider selected="true" editor-type-id="text-editor"> - <state line="37" column="28" selection-start="1085" selection-end="1085" vertical-scroll-proportion="0.44792974"> - <folding /> - </state> - </provider> - </entry> - </file> - <file leaf-file-name="TestConstants.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/TestConstants.java"> - <provider selected="true" editor-type-id="text-editor"> - <state line="41" column="72" selection-start="1500" selection-end="1500" vertical-scroll-proportion="0.5759097"> - <folding /> - </state> - </provider> - </entry> - </file> - <file leaf-file-name="FederateSynchronizationPoint.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateSynchronizationPoint.java"> - <provider selected="true" editor-type-id="text-editor"> - <state line="87" column="30" selection-start="2220" selection-end="2220" vertical-scroll-proportion="0.93601006"> - <folding /> - </state> - </provider> - </entry> - </file> - </leaf> + <leaf /> </component> <component name="FindManager"> <FindUsagesManager> @@ -385,73 +301,7 @@ <option name="myItemId" value="OHLA.ipr" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="Testsuite" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="Testsuite" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src\java" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src\java\net\sf\ohla" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src\java\net\sf\ohla\rti1516" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="Testsuite" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src\java" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src\java\net\sf\ohla" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - </PATH> </component> <component name="ProjectReloadState"> <option name="STATE" value="0" /> @@ -464,7 +314,7 @@ <showLibraryContents /> <hideEmptyPackages ProjectPane="true" /> <abbreviatePackageNames /> - <showStructure PackagesPane="false" ProjectPane="false" Favorites="false" Scope="false" /> + <showStructure PackagesPane="false" Favorites="false" ProjectPane="false" Scope="false" /> <autoscrollToSource /> <autoscrollFromSource /> <sortByType /> @@ -483,8 +333,8 @@ <property name="cvs_file_history_flatOrder1" value="1" /> <property name="cvs_file_history_flatWidth1" value="299" /> <property name="cvs_file_history_treeWidth1" value="299" /> - <property name="cvs_file_history_treeOrder2" value="2" /> <property name="cvs_file_history_treeWidth3" value="298" /> + <property name="cvs_file_history_treeOrder2" value="2" /> <property name="GoToClass.includeLibraries" value="false" /> <property name="cvs_file_history_flatOrder2" value="2" /> <property name="MemberChooser.showClasses" value="true" /> @@ -493,8 +343,8 @@ <property name="cvs_file_history_treeWidth2" value="299" /> <property name="cvs_file_history_flatOrder3" value="3" /> <property name="GoToClass.toSaveIncludeLibraries" value="false" /> - <property name="RunManagerConfig.showSettingsBeforeRunnig" value="true" /> <property name="cvs_file_history_treeOrder0" value="0" /> + <property name="RunManagerConfig.showSettingsBeforeRunnig" value="true" /> </component> <component name="ReadonlyStatusHandler"> <option name="SHOW_DIALOG" value="true" /> @@ -531,13 +381,6 @@ <option name="PROPERTIES_FILE" /> <properties /> </configuration> - <configuration selected="false" default="true" type="Remote" factoryName="Remote"> - <option name="USE_SOCKET_TRANSPORT" value="true" /> - <option name="SERVER_MODE" value="false" /> - <option name="SHMEM_ADDRESS" value="javadebug" /> - <option name="HOST" value="localhost" /> - <option name="PORT" value="5005" /> - </configuration> <configuration selected="false" default="true" type="Applet" factoryName="Applet"> <module name="" /> <option name="MAIN_CLASS_NAME" /> @@ -550,6 +393,13 @@ <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" /> <option name="ALTERNATIVE_JRE_PATH" /> </configuration> + <configuration selected="false" default="true" type="Remote" factoryName="Remote"> + <option name="USE_SOCKET_TRANSPORT" value="true" /> + <option name="SERVER_MODE" value="false" /> + <option name="SHMEM_ADDRESS" value="javadebug" /> + <option name="HOST" value="localhost" /> + <option name="PORT" value="5005" /> + </configuration> <configuration selected="false" default="true" type="Application" factoryName="Application"> <option name="MAIN_CLASS_NAME" /> <option name="VM_PARAMETERS" /> @@ -722,11 +572,11 @@ </component> <component name="ToolWindowManager"> <frame x="-4" y="-4" width="1288" height="998" extended-state="6" /> - <editor active="false" /> + <editor active="true" /> <layout> <window_info id="CVS" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="8" /> <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.32791588" order="7" /> - <window_info id="Project" active="true" anchor="left" auto_hide="false" internal_type="docked" type="docked" visible="true" weight="0.29773462" order="0" /> + <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="docked" type="docked" visible="true" weight="0.33333334" order="0" /> <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.34367815" order="1" /> <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="1" /> <window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.32413793" order="8" /> @@ -779,7 +629,7 @@ <option name="CHECK_CODE_SMELLS_BEFORE_PROJECT_COMMIT" value="true" /> <option name="PUT_FOCUS_INTO_COMMENT" value="false" /> <option name="FORCE_NON_EMPTY_COMMENT" value="false" /> - <option name="LAST_COMMIT_MESSAGE" value="corrected some variable names" /> + <option name="LAST_COMMIT_MESSAGE" value="renamed some variables" /> <option name="SAVE_LAST_COMMIT_MESSAGE" value="true" /> <option name="CHECKIN_DIALOG_SPLITTER_PROPORTION" value="0.8" /> <option name="OPTIMIZE_IMPORTS_BEFORE_PROJECT_COMMIT" value="false" /> @@ -799,6 +649,9 @@ <MESSAGE value="adding documentation" /> <MESSAGE value="[ 1594262 ] Allow to restart RTI faster" /> <MESSAGE value="corrected some variable names" /> + <MESSAGE value="- added synchronization point tests to HLA 1.3 testsuite - removed some unused constants from TestConstants" /> + <MESSAGE value="more synchronization point test cases" /> + <MESSAGE value="renamed some variables" /> </component> <component name="VssConfiguration"> <option name="CLIENT_PATH" value="" /> @@ -879,109 +732,111 @@ <option name="myLastEditedConfigurable" /> </component> <component name="editorHistoryManager"> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/callbacks/DiscoverObjectInstance.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/messages/FederateSaveInitiated.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="48" column="20" selection-start="1454" selection-end="1454" vertical-scroll-proportion="0.6612296"> + <state line="32" column="34" selection-start="955" selection-end="955" vertical-scroll-proportion="0.51224107"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectManager.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/filter/InterestManagementFilter.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="922" column="14" selection-start="27191" selection-end="27191" vertical-scroll-proportion="-0.3196931"> + <state line="243" column="37" selection-start="8806" selection-end="8806" vertical-scroll-proportion="0.56092435"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/DeclarationManagementTestNG.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/callbacks/ReflectAttributeValues.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="31" column="13" selection-start="1121" selection-end="1121" vertical-scroll-proportion="-0.36956522"> + <state line="48" column="15" selection-start="1750" selection-end="1750" vertical-scroll-proportion="0.5988258"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/TestConstants.java"> + <entry file="file://$PROJECT_DIR$/../../ieee-1516/src/java/hla/rti1516/jlc/NullFederateAmbassador.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="41" column="72" selection-start="1500" selection-end="1500" vertical-scroll-proportion="0.5759097"> + <state line="76" column="0" selection-start="2635" selection-end="2635" vertical-scroll-proportion="0.33291772"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/RTI.java"> + <entry file="file://$PROJECT_DIR$/../../ieee-1516/src/java/hla/rti1516/FederateAmbassador.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="59" column="35" selection-start="2126" selection-end="2126" vertical-scroll-proportion="0.13682865"> + <state line="40" column="60" selection-start="1623" selection-end="1623" vertical-scroll-proportion="0.33291772"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/callbacks/AnnounceSynchronizationPoint.java"> - <provider selected="true" editor-type-id="text-editor"> - <state line="37" column="28" selection-start="1085" selection-end="1085" vertical-scroll-proportion="0.44792974"> - <folding /> - </state> - </provider> - </entry> <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/Federate.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="3383" column="9" selection-start="98187" selection-end="98187" vertical-scroll-proportion="0.33248082"> + <state line="498" column="42" selection-start="20308" selection-end="20308" vertical-scroll-proportion="0.3414322"> <folding> <element signature="imports" expanded="true" /> </folding> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateSynchronizationPoint.java"> + <entry file="file://$PROJECT_DIR$/../../hla-1.3/src/java/hla/rti/ReflectedAttributes.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="87" column="30" selection-start="2220" selection-end="2220" vertical-scroll-proportion="0.93601006"> + <state line="2" column="17" selection-start="35" selection-end="35" vertical-scroll-proportion="0.042659976"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../ieee-1516/src/java/hla/rti1516/FederateAmbassador.java"> + <entry file="file://$PROJECT_DIR$/../../hla-1.3/src/java/hla/rti/RTIambassador.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="27" column="7" selection-start="1154" selection-end="1154" vertical-scroll-proportion="0.33248082"> + <state line="42" column="0" selection-start="1835" selection-end="1835" vertical-scroll-proportion="0.3412798"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../ieee-1516/src/java/hla/rti1516/jlc/NullFederateAmbassador.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti/OHLARTIambassador.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="55" column="0" selection-start="2163" selection-end="2163" vertical-scroll-proportion="0.19565217"> + <state line="341" column="12" selection-start="11764" selection-end="11764" vertical-scroll-proportion="0.9066496"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/callbacks/FederationSynchronized.java"> + <entry file="file://$PROJECT_DIR$/../../hla-1.3/src/java/hla/rti/FederateAmbassador.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="35" column="13" selection-start="1002" selection-end="1002" vertical-scroll-proportion="0.40526977"> + <state line="61" column="45" selection-start="1973" selection-end="1973" vertical-scroll-proportion="0.2685069"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/BaseTestNG.java"> + <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="32" column="22" selection-start="996" selection-end="996" vertical-scroll-proportion="0.14930992"> + <state line="295" column="12" selection-start="10776" selection-end="10776" vertical-scroll-proportion="0.3412798"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateSave.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="88" column="0" selection-start="3103" selection-end="3103" vertical-scroll-proportion="0.27728984"> + <state line="48" column="3" selection-start="1321" selection-end="1321" vertical-scroll-proportion="0.45294857"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/FederationManagementTestNG.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectManager.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="71" column="32" selection-start="2190" selection-end="2190" vertical-scroll-proportion="0.76086956"> + <state line="966" column="14" selection-start="28910" selection-end="28910" vertical-scroll-proportion="0.58056265"> + <folding> + <element signature="imports" expanded="true" /> + </folding> + </state> + </provider> + </entry> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectInstance.java"> + <provider selected="true" editor-type-id="text-editor"> + <state line="77" column="13" selection-start="3213" selection-end="3213" vertical-scroll-proportion="0.13043478"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../resources/testsuite/ieee-1516-testng.xml"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/SubscriptionManager.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="47" column="0" selection-start="911" selection-end="1528" vertical-scroll-proportion="0.93601006"> + <state line="230" column="21" selection-start="7508" selection-end="7508" vertical-scroll-proportion="0.21867007"> <folding /> </state> </provider> Modified: trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java 2006-11-11 03:49:36 UTC (rev 16) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java 2006-11-11 03:56:13 UTC (rev 17) @@ -26,7 +26,6 @@ import java.util.Map; import java.util.PriorityQueue; import java.util.Queue; -import java.util.Set; import java.util.concurrent.Callable; import java.util.concurrent.ExecutionException; import java.util.concurrent.Future; @@ -53,6 +52,7 @@ import net.sf.ohla.rti1516.fdd.FDD; import net.sf.ohla.rti1516.federate.callbacks.Callback; import net.sf.ohla.rti1516.federate.callbacks.CallbackManager; +import net.sf.ohla.rti1516.federate.callbacks.DiscoverObjectInstance; import net.sf.ohla.rti1516.federate.callbacks.InitiateFederateRestore; import net.sf.ohla.rti1516.federate.callbacks.InitiateFederateSave; import net.sf.ohla.rti1516.federate.callbacks.ObjectInstanceNameReservationFailed; @@ -113,6 +113,7 @@ import hla.rti1516.AsynchronousDeliveryAlreadyDisabled; import hla.rti1516.AsynchronousDeliveryAlreadyEnabled; +import hla.rti1516.AttributeAcquisitionWasNotCanceled; import hla.rti1516.AttributeAcquisitionWasNotRequested; import hla.rti1516.AttributeAlreadyBeingAcquired; import hla.rti1516.AttributeAlreadyBeingDivested; @@ -127,6 +128,8 @@ import hla.rti1516.AttributeNotDefined; import hla.rti1516.AttributeNotOwned; import hla.rti1516.AttributeNotPublished; +import hla.rti1516.AttributeNotRecognized; +import hla.rti1516.AttributeNotSubscribed; import hla.rti1516.AttributeRegionAssociation; import hla.rti1516.AttributeRelevanceAdvisorySwitchIsOff; import hla.rti1516.AttributeRelevanceAdvisorySwitchIsOn; @@ -134,6 +137,8 @@ import hla.rti1516.AttributeScopeAdvisorySwitchIsOn; import hla.rti1516.AttributeSetRegionSetPairList; import hla.rti1516.AttributeSetRegionSetPairListFactory; +import hla.rti1516.CouldNotDiscover; +import hla.rti1516.CouldNotInitiateRestore; import hla.rti1516.DeletePrivilegeNotHeld; import hla.rti1516.DimensionHandle; import hla.rti1516.DimensionHandleFactory; @@ -143,9 +148,12 @@ import hla.rti1516.FederateAmbassador; import hla.rti1516.FederateHandle; import hla.rti1516.FederateHandleFactory; +import hla.rti1516.FederateHandleRestoreStatusPair; +import hla.rti1516.FederateHandleSaveStatusPair; import hla.rti1516.FederateHandleSet; import hla.rti1516.FederateHandleSetFactory; import hla.rti1516.FederateHasNotBegunSave; +import hla.rti1516.FederateInternalError; import hla.rti1516.FederateOwnsAttributes; import hla.rti1516.FederateServiceInvocationsAreBeingReportedViaMOM; import hla.rti1516.FederateUnableToUseTime; @@ -156,7 +164,10 @@ import hla.rti1516.InteractionClassHandleFactory; import hla.rti1516.InteractionClassNotDefined; import hla.rti1516.InteractionClassNotPublished; +import hla.rti1516.InteractionClassNotRecognized; +import hla.rti1516.InteractionClassNotSubscribed; import hla.rti1516.InteractionParameterNotDefined; +import hla.rti1516.InteractionParameterNotRecognized; import hla.rti1516.InteractionRelevanceAdvisorySwitchIsOff; import hla.rti1516.InteractionRelevanceAdvisorySwitchIsOn; import hla.rti1516.InvalidAttributeHandle; @@ -175,6 +186,7 @@ import hla.rti1516.InvalidRegionContext; import hla.rti1516.InvalidTransportationName; import hla.rti1516.InvalidTransportationType; +import hla.rti1516.JoinedFederateIsNotInTimeAdvancingState; import hla.rti1516.LogicalTime; import hla.rti1516.LogicalTimeAlreadyPassed; import hla.rti1516.LogicalTimeInterval; @@ -183,10 +195,13 @@ import hla.rti1516.MessageRetractionReturn; import hla.rti1516.MobileFederateServices; import hla.rti1516.NameNotFound; +import hla.rti1516.NoRequestToEnableTimeConstrainedWasPending; +import hla.rti1516.NoRequestToEnableTimeRegulationWasPending; import hla.rti1516.ObjectClassHandle; import hla.rti1516.ObjectClassHandleFactory; import hla.rti1516.ObjectClassNotDefined; import hla.rti1516.ObjectClassNotPublished; +import hla.rti1516.ObjectClassNotRecognized; import hla.rti1516.ObjectClassRelevanceAdvisorySwitchIsOff; import hla.rti1516.ObjectClassRelevanceAdvisorySwitchIsOn; import hla.rti1516.ObjectInstanceHandle; @@ -213,11 +228,14 @@ import hla.rti1516.RequestForTimeConstrainedPending; import hla.rti1516.RequestForTimeRegulationPending; import hla.rti1516.ResignAction; +import hla.rti1516.RestoreFailureReason; import hla.rti1516.RestoreInProgress; import hla.rti1516.RestoreNotRequested; +import hla.rti1516.SaveFailureReason; import hla.rti1516.SaveInProgress; import hla.rti1516.SaveNotInitiated; import hla.rti1516.ServiceGroup; +import hla.rti1516.SpecifiedSaveLabelDoesNotExist; import hla.rti1516.SynchronizationPointFailureReason; import hla.rti1516.SynchronizationPointLabelNotAnnounced; import hla.rti1516.TimeConstrainedAlreadyEnabled; @@ -226,7 +244,9 @@ import hla.rti1516.TimeRegulationAlreadyEnabled; import hla.rti1516.TimeRegulationIsNotEnabled; import hla.rti1516.TransportationType; -import hla.rti1516.FederateInternalError; +import hla.rti1516.UnableToPerformSave; +import hla.rti1516.UnknownName; +import hla.rti1516.jlc.NullFederateAmbassador; public class Federate { @@ -245,6 +265,9 @@ protected final FederateAmbassador federateAmbassador; protected final MobileFederateServices mobileFederateServices; + protected final FederateAmbassador federateAmbassadorInterceptor = + new FederateAmbassadorInterceptor(); + protected FederateHandle federateHandle; protected String federationName; @@ -475,7 +498,7 @@ public FederateAmbassador getFederateAmbassador() { - return federateAmbassador; + return federateAmbassadorInterceptor; } public FDD getFDD() @@ -523,8 +546,27 @@ boolean processed = true; if (message instanceof Callback) { - if (message instanceof InitiateFederateSave) + if (message instanceof ReflectAttributeValues) { + ReflectAttributeValues reflectAttributeValues = + (ReflectAttributeValues) message; + + objectManager.objectReflected( + reflectAttributeValues.getObjectInstanceHandle(), + reflectAttributeValues.getObjectClassHandle()); + } + else if (message instanceof DiscoverObjectInstance) + { + DiscoverObjectInstance discoverObjectInstance = + (DiscoverObjectInstance) message; + + String name = objectManager.createObjectInstanceName( + discoverObjectInstance.getObjectInstanceHandle(), + discoverObjectInstance.getObjectClassHandle()); + discoverObjectInstance.setName(name); + } + else if (message instanceof InitiateFederateSave) + { InitiateFederateSave initiateFederateSave = (InitiateFederateSave) message; @@ -3381,120 +3423,6 @@ } } - public void announceSynchronizationPoint(String label, byte[] tag) - { - FederateSynchronizationPoint federateSynchronizationPoint; - - synchronizationPointLock.lock(); - try - { - federateSynchronizationPoint = synchronizationPoints.get(label); - if (federateSynchronizationPoint == null) - { - federateSynchronizationPoint = - new FederateSynchronizationPoint(label, tag); - synchronizationPoints.put(label, federateSynchronizationPoint); - } - } - finally - { - synchronizationPointLock.unlock(); - } - - federateSynchronizationPoint.announceSynchronizationPoint(); - - try - { - federateAmbassador.announceSynchronizationPoint(label, tag); - } - catch (FederateInternalError fie) - { - log.warn(String.format( - "federate could not process announcement of synchronization point: %s", - label), fie); - } - } - - public void federationSynchronized(String label) - { - FederateSynchronizationPoint federateSynchronizationPoint; - - synchronizationPointLock.lock(); - try - { - // remove the synchronization point - // - federateSynchronizationPoint = synchronizationPoints.remove(label); - } - finally - { - synchronizationPointLock.unlock(); - } - - assert federateSynchronizationPoint != null; - - federateSynchronizationPoint.federationSynchronized(); - - try - { - federateAmbassador.federationSynchronized(label); - } - catch (FederateInternalError fie) - { - log.warn(String.format( - "federate could not process federation synchronization: %s", - label), fie); - } - } - - public void discoverObjectInstance( - ObjectInstanceHandle objectInstanceHandle, - ObjectClassHandle objectClassHandle) - { - objectManager.discoverObjectInstance( - objectInstanceHandle, objectClassHandle); - } - - public void reflectAttributeValues( - ObjectInstanceHandle objectInstanceHandle, - ObjectClassHandle objectClassHandle, - AttributeHandleValueMap attributeValues, byte[] tag, - OrderType sentOrderType, TransportationType transportationType, - LogicalTime updateTime, OrderType receivedOrderType, - MessageRetractionHandle messageRetractionHandle, - RegionHandleSet sentRegionHandles) - { - objectManager.reflectAttributeValues( - objectInstanceHandle, objectClassHandle, attributeValues, tag, - sentOrderType, transportationType, updateTime, receivedOrderType, - messageRetractionHandle, sentRegionHandles); - } - - public void receiveInteraction( - InteractionClassHandle interactionClassHandle, - ParameterHandleValueMap parameterValues, byte[] tag, - OrderType sentOrderType, TransportationType transportationType, - LogicalTime sendTime, OrderType receivedOrderType, - MessageRetractionHandle messageRetractionHandle, - RegionHandleSet sentRegionHandles) - { - objectManager.receiveInteraction( - interactionClassHandle, parameterValues, tag, sentOrderType, - transportationType, sendTime, receivedOrderType, - messageRetractionHandle, sentRegionHandles); - } - - public void removeObjectInstance( - ObjectInstanceHandle objectInstanceHandle, byte[] tag, - OrderType sentOrderType, LogicalTime deleteTime, - OrderType receivedOrderType, - MessageRetractionHandle messageRetractionHandle) - { - objectManager.removeObjectInstance( - objectInstanceHandle, tag, sentOrderType, deleteTime, - receivedOrderType, messageRetractionHandle); - } - protected void checkIfAlreadyExecutionMember() throws FederateAlreadyExecutionMember { @@ -3551,56 +3479,6 @@ return future; } - public void initiateFederateSave(String label, LogicalTime saveTime, - Set<FederateHandle> participants) - { - federateStateLock.writeLock().lock(); - try - { - if (saveTime == null) - { - federateAmbassador.initiateFederateSave(label); - } - else - { - federateAmbassador.initiateFederateSave(label, saveTime); - } - - FederateSaveInitiated federateSaveInitiated = - new FederateSaveInitiated(participants); - - rtiSession.write(federateSaveInitiated); - sendToPeers(federateSaveInitiated); - } - catch (Throwable t) - { - FederateSaveInitiatedFailed federateSaveInitiatedFailed = - new FederateSaveInitiatedFailed(t, participants); - - rtiSession.write(federateSaveInitiatedFailed); - sendToPeers(federateSaveInitiatedFailed); - } - finally - { - federateState = FederateState.SAVE_IN_PROGRESS; - - // hold any pending callbacks so only callbacks that can occur during - // a save will get through - // - callbackManager.holdCallbacks(); - - federateStateLock.writeLock().unlock(); - } - } - - public void attributeOwnershipAcquisitionNotification( - ObjectInstanceHandle objectInstanceHandle, - AttributeHandleSet attributeHandles, byte[] tag) - { - objectManager.attributeOwnershipAcquisitionNotification( - objectInstanceHandle, attributeHandles, tag); - } - protected class TimestampedFutureTask extends FutureTask<Object> implements Comparable @@ -3846,4 +3724,623 @@ return (FederateHandle) session.getAttribute(PEER_FEDERATE_HANDLE); } } + + protected class FederateAmbassadorInterceptor + extends NullFederateAmbassador + { + public void synchronizationPointRegistrationSucceeded(String label) + throws FederateInternalError + { + federateAmbassador.synchronizationPointRegistrationSucceeded(label); + } + + public void synchronizationPointRegistrationFailed(String label, + SynchronizationPointFailureReason reason) + throws FederateInternalError + { + federateAmbassador.synchronizationPointRegistrationFailed(label, reason); + } + + public void announceSynchronizationPoint(String label, byte[] tag) + throws FederateInternalError + { + FederateSynchronizationPoint federateSynchronizationPoint; + + synchronizationPointLock.lock(); + try + { + federateSynchronizationPoint = synchronizationPoints.get(label); + if (federateSynchronizationPoint == null) + { + federateSynchronizationPoint = + new FederateSynchronizationPoint(label, tag); + synchronizationPoints.put(label, federateSynchronizationPoint); + } + } + finally + { + synchronizationPointLock.unlock(); + } + + federateSynchronizationPoint.announceSynchronizationPoint(); + + federateAmbassador.announceSynchronizationPoint(label, tag); + } + + public void federationSynchronized(String label) + throws FederateInternalError + { + FederateSynchronizationPoint federateSynchronizationPoint; + + synchronizationPointLock.lock(); + try + { + // remove the synchronization point + // + federateSynchronizationPoint = synchronizationPoints.remove(label); + } + finally + { + synchronizationPointLock.unlock(); + } + + assert federateSynchronizationPoint != null; + + federateSynchronizationPoint.federationSynchronized(); + + federateAmbassador.federationSynchronized(label); + } + + public void initiateFederateSave(String label) + throws UnableToPerformSave, FederateInternalError + { + federateStateLock.writeLock().lock(); + try + { + federateAmbassador.initiateFederateSave(label); + + FederateSaveInitiated federateSaveInitiated = + new FederateSaveInitiated(federateSave.getParticipants()); + + rtiSession.write(federateSaveInitiated); + sendToPeers(federateSaveInitiated); + } + catch (Throwable t) + { + FederateSaveInitiatedFailed federateSaveInitiatedFailed = + new FederateSaveInitiatedFailed(t, federateSave.getParticipants()); + + rtiSession.write(federateSaveInitiatedFailed); + sendToPeers(federateSaveInitiatedFailed); + } + finally + { + federateState = FederateState.SAVE_IN_PROGRESS; + + // hold any pending callbacks so only callbacks that can occur during + // a save will get through + // + callbackManager.holdCallbacks(); + + federateStateLock.writeLock().unlock(); + } + } + + public void initiateFederateSave(String label, LogicalTime saveTime) + throws InvalidLogicalTime, UnableToPerformSave, FederateInternalError + { + federateStateLock.writeLock().lock(); + try + { + federateAmbassador.initiateFederateSave(label, saveTime); + + FederateSaveInitiated federateSaveInitiated = + new FederateSaveInitiated(federateSave.getParticipants()); + + rtiSession.write(federateSaveInitiated); + sendToPeers(federateSaveInitiated); + } + catch (Throwable t) + { + FederateSaveInitiatedFailed federateSaveInitiatedFailed = + new FederateSaveInitiatedFailed(t, federateSave.getParticipants()); + + rtiSession.write(federateSaveInitiatedFailed); + sendToPeers(federateSaveInitiatedFailed); + } + finally + { + federateState = FederateState.SAVE_IN_PROGRESS; + + // hold any pending callbacks so only callbacks that can occur during + // a save will get through + // + callbackManager.holdCallbacks(); + + federateStateLock.writeLock().unlock(); + } + federateAmbassador.initiateFederateSave(label, time); + } + + public void federationSaved() + throws FederateInternalError + { + federateAmbassador.federationSaved(); + } + + public void federationNotSaved(SaveFailureReason reason) + throws FederateInternalError + { + federateAmbassador.federationNotSaved(reason); + } + + public void federationSaveStatusResponse( + FederateHandleSaveStatusPair[] response) + throws FederateInternalError + { + federateAmbassador.federationSaveStatusResponse(response); + } + + public void requestFederationRestoreSucceeded(String label) + throws FederateInternalError + { + federateAmbassador.requestFederationRestoreSucceeded(label); + } + + public void requestFederationRestoreFailed(String label) + throws FederateInternalError + { + federateAmbassador.requestFederationRestoreFailed(label); + } + + public void federationRestoreBegun() + throws FederateInternalError + { + federateAmbassador.federationRestoreBegun(); + } + + public void initiateFederateRestore(String label, + FederateHandle federateHandle) + throws SpecifiedSaveLabelDoesNotExist, CouldNotInitiateRestore, + FederateInternalError + { + federateAmbassador.initiateFederateRestore(label, federateHandle); + } + + public void federationRestored() + throws FederateInternalError + { + federateAmbassador.federationRestored(); + } + + public void federationNotRestored(RestoreFailureReason reason) + throws FederateInternalError + { + federateAmbassador.federationNotRestored(reason); + } + + public void federationRestoreStatusResponse( + FederateHandleRestoreStatusPair[] response) + throws FederateInternalError + { + federateAmbassador.federationRestoreStatusResponse(response); + } + + public void startRegistrationForObjectClass( + ObjectClassHandle objectClassHandle) + throws ObjectClassNotPublished, FederateInternalError + { + federateAmbassador.startRegistrationForObjectClass(objectClassHandle); + } + + public void stopRegistrationForObjectClass( + ObjectClassHandle objectClassHandle) + throws ObjectClassNotPublished, FederateInternalError + { + federateAmbassador.stopRegistrationForObjectClass(objectClassHandle); + } + + public void turnInteractionsOn(InteractionClassHandle interactionClassHandle) + throws InteractionClassNotPublished, FederateInternalError + { + federateAmbassador.turnInteractionsOn(interactionClassHandle); + } + + public void turnInteractionsOff( + InteractionClassHandle interactionClassHandle) + throws InteractionClassNotPublished, FederateInternalError + { + federateAmbassador.turnInteractionsOff(interactionClassHandle); + } + + public void objectInstanceNameReservationSucceeded(String name) + throws UnknownName, FederateInternalError + { + federateAmbassador.objectInstanceNameReservationSucceeded(name); + } + + public void objectInstanceNameReservationFailed(String name) + throws UnknownName, FederateInternalError + { + federateAmbassador.objectInstanceNameReservationFailed(name); + } + + public void discoverObjectInstance( + ObjectInstanceHandle objectInstanceHandle, + ObjectClassHandle objectClassHandle, String name) + throws CouldNotDiscover, ObjectClassNotRecognized, FederateInternalError + { + objectManager.discoverObjectInstance( + objectInstanceHandle, objectClassHandle, name, federateAmbassador); + } + + public void reflectAttributeValues( + ObjectInstanceHandle objectInstanceHandle, + AttributeHandleValueMap attributeValues, byte[] tag, + OrderType sentOrderType, TransportationType transportationType) + throws ObjectInstanceNotKnown, AttributeNotRecognized, + AttributeNotSubscribed, FederateInternalError + { + objectManager.reflectAttributeValues( + objectInstanceHandle, attributeValues, tag, sentOrderType, + transportationType, null, null, null, null, federateAmbassador); + } + + public void reflectAttributeValues( + ObjectInstanceHandle objectInstanceHandle, + AttributeHandleValueMap attributeValues, byte[] tag, + OrderType sentOrderType, TransportationType transportationType, + RegionHandleSet regionHandles) + throws ObjectInstanceNotKnown, AttributeNotRecognized, + AttributeNotSubscribed, FederateInternalError + { + objectManager.reflectAttributeValues( + objectInstanceHandle, attributeValues, tag, sentOrderType, + transportationType, null, null, null, regionHandles, + federateAmbassador); + } + + public void reflectAttributeValues( + ObjectInstanceHandle objectInstanceHandle, + AttributeHandleValueMap attributeValues, byte[] tag, + OrderType sentOrderType, TransportationType transportationType, + LogicalTime updateTime, OrderType receivedOrderType) + throws ObjectInstanceNotKnown, AttributeNotRecognized, + AttributeNotSubscribed, FederateInternalError + { + objectManager.reflectAttributeValues( + objectInstanceHandle, attributeValues, tag, sentOrderType, + transportationType, updateTime, receivedOrderType, null, null, + federateAmbassador); + } + + public void reflectAttributeValues( + ObjectInstanceHandle objectInstanceHandle, + AttributeHandleValueMap attributeValues, byte[] tag, + OrderType sentOrderType, TransportationType transportationType, + LogicalTime updateTime, OrderType receivedOrderType, + RegionHandleSet regionHandles) + throws ObjectInstanceNotKnown, AttributeNotRecognized, + AttributeNotSubscribed, FederateInternalError + { + objectManager.reflectAttributeValues( + objectInstanceHandle, attributeValues, tag, sentOrderType, + transportationType, updateTime, receivedOrderType, null, regionHandles, + federateAmbassador); + } + + public void reflectAttributeValues( + ObjectInstanceHandle objectInstanceHandle, + AttributeHandleValueMap attributeValues, byte[] tag, OrderType sentOrderType, + TransportationType transportationType, LogicalTime updateTime, + OrderType receivedOrderType, + MessageRetractionHandle messageRetractionHandle) + throws ObjectInstanceNotKnown, AttributeNotRecognized, + AttributeNotSubscribed, InvalidLogicalTime, FederateInternalError + { + objectManager.reflectAttributeValues( + objectInstanceHandle, attributeValues, tag, sentOrderType, + transportationType, updateTime, receivedOrderType, + messageRetractionHandle, null, federateAmbassador); + } + + public void reflectAttributeValues( + ObjectInstanceHandle objectInstanceHandle, + AttributeHandleValueMap attributeValues, byte[] tag, OrderType sentOrderType, + TransportationType transportationType, LogicalTime updateTime, + OrderType receivedOrderType, + MessageRetractionHandle messageRetractionHandle, + RegionHandleSet regionHandles) + throws ObjectInstanceNotKnown, AttributeNotRecognized, + AttributeNotSubscribed, InvalidLogicalTime, FederateInternalError + { + objectManager.reflectAttributeValues( + objectInstanceHandle, attributeValues, tag, sentOrderType, + transportationType, updateTime, receivedOrderType, + messageRetractionHandle, regionHandles, federateAmbassador); + } + + public void receiveInteraction( + InteractionClassHandle interactionClassHandle, + ParameterHandleValueMap parameterValues, byte[] tag, + OrderType sentOrderType, TransportationType transportationType) + throws InteractionClassNotRecognized, InteractionParameterNotRecognized, + InteractionClassNotSubscribed, FederateInternalError + { + objectManager.receiveInteraction( + interactionClassHandle, parameterValues, tag, sentOrderType, + transportationType, null, null, null, null, federateAmbassador); + } + + public void receiveInteraction( + InteractionClassHandle interactionClassHandle, + ParameterHandleValueMap parameterValues, byte[] tag, + OrderType sentOrderType, TransportationType transportationType, + RegionHandleSet regionHandles) + throws InteractionClassNotRecognized, InteractionParameterNotRecognized, + InteractionClassNotSubscribed, FederateInternalError + { + objectManager.receiveInteraction( + interactionClassHandle, parameterValues, tag, sentOrderType, + transportationType, null, null, null, regionHandles, + federateAmbassador); + } + + public void receiveInteraction( + InteractionClassHandle interactionClassHandle, + ParameterHandleValueMap parameterValues, byte[] tag, + OrderType sentOrderType, TransportationType transportationType, + LogicalTime sentTime, OrderType receivedOrderType) + throws InteractionClassNotRecognized, InteractionParameterNotRecognized, + InteractionClassNotSubscribed, FederateInternalError + { + objectManager.receiveInteraction( + interactionClassHandle, parameterValues, tag, sentOrderType, + transportationType, sentTime, receivedOrderType, null, null, + federateAmbassador); + } + + public void receiveInteraction( + InteractionClassHandle interactionClassHandle, + ParameterHandleValueMap parameterValues, byte[] tag, + OrderType sentOrderType, TransportationType transportationType, + LogicalTime sentTime, OrderType receivedOrderType, + RegionHandleSet regionHandles) + throws InteractionClassNotRecognized, InteractionParameterNotRecognized, + InteractionClassNotSubscribed, FederateInternalError + { + objectManager.receiveInteraction( + interactionClassHandle, parameterValues, tag, sentOrderType, + transportationType, sentTime, receivedOrderType, null, regionHandles, + federateAmbassador); + } + + public void receiveInteraction( + InteractionClassHandle interactionClassHandle, + ParameterHandleValueMap parameterValues, byte[] tag, + OrderType sentOrderType, TransportationType transportationType, + LogicalTime sentTime, OrderType receivedOrderType, + MessageRetractionHandle messageRetractionHandle) + throws InteractionClassNotRecognized, InteractionParameterNotRecognized, + InteractionClassNotSubscribed, InvalidLogicalTime, + FederateInternalError + { + objectManager.receiveInteraction( + interactionClassHandle, parameterValues, tag, sentOrderType, + transportationType, sentTime, receivedOrderType, + messageRetractionHandle, null, federateAmbassador); + } + + public void receiveInteraction( + InteractionClassHandle interactionClassHandle, + ParameterHandleValueMap parameterValues, byte[] tag, + OrderType sentOrderType, TransportationType transportationType, + LogicalTime sentTime, OrderType receivedOrderType, + MessageRetractionHandle messageRetractionHandle, + RegionHandleSet regionHandles) + throws InteractionClassNotRecognized, InteractionParameterNotRecognized, + InteractionClassNotSubscribed, InvalidLogicalTime, + FederateInternalError + { + objectManager.receiveInteraction( + interactionClassHandle, parameterValues, tag, sentOrderType, + transportationType, sentTime, receivedOrderType, + messageRetractionHandle, regionHandles, federateAmbassador); + } + + public void removeObjectInstance(ObjectInstanceHandle objectInstanceHandle, + byte[] tag, OrderType sentOrderType) + throws ObjectInstanceNotKnown, FederateInternalError + { + objectManager.removeObjectInstance( + objectInstanceHandle, tag, sentOrderType, null, null, null, + federateAmbassador); + } + + public void removeObjectInstance(ObjectInstanceHandle objectInstanceHandle, + byte[] tag, OrderType sentOrderType, + LogicalTime deleteTime, + OrderType receivedOrderType) + throws ObjectInstanceNotKnown, FederateInternalError + { + objectManager.removeObjectInstance( + objectInstanceHandle, tag, sentOrderType, deleteTime, receivedOrderType, + null, federateAmbassador); + } + + public void removeObjectInstance(ObjectInstanceHandle objectInstanceHandle, + byte[] tag, OrderType sentOrderType, + LogicalTime deleteTime, + OrderType receivedOrderType, + MessageRetractionHandle messageRetractionHandle) + throws ObjectInstanceNotKnown, InvalidLogicalTime, FederateInternalError + { + objectManager.removeObjectInstance( + objectInstanceHandle, tag, sentOrderType, deleteTime, receivedOrderType, + messageRetractionHandle, federateAmbassador); + } + + public void attributesInScope(ObjectInstanceHandle objectInstanceHandle, + AttributeHandleSet attributeHandles) + throws ObjectInstanceNotKnown, AttributeNotRecognized, + AttributeNotSubscribed, FederateInternalError + { + federateAmbassador.attributesInScope( + objectInstanceHandle, attributeHandles); + } + + public void attributesOutOfScope(ObjectInstanceHandle objectInstanceHandle, + AttributeHandleSet attributeHandles) + throws ObjectInstanceNotKnown, AttributeNotRecognized, + AttributeNotSubscribed, FederateInternalError + { + federateAmbassador.attributesOutOfScope( + objectInstanceHandle, attributeHandles); + } + + public void provideAttributeValueUpdate( + ObjectInstanceHandle objectInstanceHandle, + AttributeHandleSet attributeHandles, byte[] tag) + throws ObjectInstanceNotKnown, AttributeNotRecognized, AttributeNotOwned, + FederateInternalError + { + federateAmbassador.provideAttributeValueUpdate( + objectInstanceHandle, attributeHandles, tag); + } + + public void turnUpdatesOnForObjectInstance( + ObjectInstanceHandle objectInstanceHandle, + AttributeHandleSet attributeHandles) + throws ObjectInstanceNotKnown, AttributeNotRecognized, AttributeNotOwned, + FederateInternalError + { + federateAmbassador.turnUpdatesOnForObjectInstance( + objectInstanceHandle, attributeHandles); + } + + public void turnUpdatesOffForObjectInstance( + ObjectInstanceHandle objectInstanceHandle, + AttributeHandleSet attributeHandles) + throws ObjectInstanceNotKnown, AttributeNotRecognized, AttributeNotOwned, + FederateInternalError + { + federateAmbassador.turnUpdatesOffForObjectInstance( + objectInstanceHandle, attributeHandles); + } + + public void requestAttributeOwnershipAssumption( + ObjectInstanceHandle objectInstanceHandle, + AttributeHandleSet attributeHandles, byte[] tag) + throws ObjectIn... [truncated message content] |
From: <mne...@us...> - 2006-11-12 16:59:30
|
Revision: 20 http://svn.sourceforge.net/ohla/?rev=20&view=rev Author: mnewcomb Date: 2006-11-12 08:59:19 -0800 (Sun, 12 Nov 2006) Log Message: ----------- DDM test case Modified Paths: -------------- trunk/resources/testsuite/ieee-1516-testng.xml Added Paths: ----------- trunk/testsuite/src/java/net/sf/ohla/rti1516/DataDistributionManagementTestNG.java Modified: trunk/resources/testsuite/ieee-1516-testng.xml =================================================================== --- trunk/resources/testsuite/ieee-1516-testng.xml 2006-11-12 16:53:08 UTC (rev 19) +++ trunk/resources/testsuite/ieee-1516-testng.xml 2006-11-12 16:59:19 UTC (rev 20) @@ -45,4 +45,10 @@ <class name="net.sf.ohla.rti1516.OwnershipManagementTestNG"/> </classes> </test> + + <test name="IEEE 1516 - Data Distribution Management"> + <classes> + <class name="net.sf.ohla.rti1516.DataDistributionManagementTestNG"/> + </classes> + </test> </suite> Added: trunk/testsuite/src/java/net/sf/ohla/rti1516/DataDistributionManagementTestNG.java =================================================================== --- trunk/testsuite/src/java/net/sf/ohla/rti1516/DataDistributionManagementTestNG.java (rev 0) +++ trunk/testsuite/src/java/net/sf/ohla/rti1516/DataDistributionManagementTestNG.java 2006-11-12 16:59:19 UTC (rev 20) @@ -0,0 +1,143 @@ +/* + * Copyright (c) 2006, Michael Newcomb + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.sf.ohla.rti1516; + +import org.testng.annotations.BeforeClass; +import org.testng.annotations.AfterClass; +import org.testng.annotations.Test; + +import hla.rti1516.jlc.NullFederateAmbassador; +import static hla.rti1516.ResignAction.NO_ACTION; +import hla.rti1516.DimensionHandleSet; +import hla.rti1516.DimensionHandle; +import hla.rti1516.RegionHandle; +import hla.rti1516.RangeBounds; +import hla.rti1516.RegionHandleSet; + +public class DataDistributionManagementTestNG + extends BaseTestNG +{ + protected RegionHandle regionHandle1; + protected RegionHandle regionHandle2; + + protected DimensionHandle dimensionHandle1; + protected DimensionHandle dimensionHandle2; + protected DimensionHandle dimensionHandle3; + protected DimensionHandle dimensionHandle4; + protected DimensionHandleSet dimensionHandles; + + protected RangeBounds rangeBounds = new RangeBounds(); + + public DataDistributionManagementTestNG() + { + super(2); + + rangeBounds.lower = 10; + rangeBounds.upper = 20; + } + + @BeforeClass + public void setup() + throws Exception + { + rtiAmbassadors.get(0).createFederationExecution(FEDERATION_NAME, fdd); + + rtiAmbassadors.get(0).joinFederationExecution( + FEDERATE_TYPE, FEDERATION_NAME, new NullFederateAmbassador(), null); + rtiAmbassadors.get(1).joinFederationExecution( + FEDERATE_TYPE + "2", FEDERATION_NAME, new NullFederateAmbassador(), null); + + dimensionHandle1 = rtiAmbassadors.get(0).getDimensionHandle(DIMENSION1); + dimensionHandle2 = rtiAmbassadors.get(0).getDimensionHandle(DIMENSION2); + dimensionHandle3 = rtiAmbassadors.get(0).getDimensionHandle(DIMENSION3); + dimensionHandle4 = rtiAmbassadors.get(0).getDimensionHandle(DIMENSION4); + + dimensionHandles = + rtiAmbassadors.get(0).getDimensionHandleSetFactory().create(); + dimensionHandles.add(dimensionHandle1); + dimensionHandles.add(dimensionHandle2); + dimensionHandles.add(dimensionHandle3); + dimensionHandles.add(dimensionHandle4); + } + + @AfterClass + public void teardown() + throws Exception + { + rtiAmbassadors.get(0).resignFederationExecution(NO_ACTION); + rtiAmbassadors.get(1).resignFederationExecution(NO_ACTION); + + rtiAmbassadors.get(0).destroyFederationExecution(FEDERATION_NAME); + } + + @Test + public void testCreateRegion() + throws Exception + { + regionHandle1 = rtiAmbassadors.get(0).createRegion(dimensionHandles); + regionHandle2 = rtiAmbassadors.get(1).createRegion(dimensionHandles); + } + + @Test(dependsOnMethods = {"testCreateRegion"}) + public void testSetRangeBounds() + throws Exception + { + rtiAmbassadors.get(0).setRangeBounds( + regionHandle1, dimensionHandle1, rangeBounds); + + RangeBounds originalRangeBounds = rtiAmbassadors.get(0).getRangeBounds( + regionHandle1, dimensionHandle1); + + assert originalRangeBounds.lower != rangeBounds.lower && + originalRangeBounds.upper != rangeBounds.upper; + + RegionHandleSet regionHandles = + rtiAmbassadors.get(0).getRegionHandleSetFactory().create(); + regionHandles.add(regionHandle1); + + rtiAmbassadors.get(0).commitRegionModifications(regionHandles); + + RangeBounds newRangeBounds = rtiAmbassadors.get(0).getRangeBounds( + regionHandle1, dimensionHandle1); + + assert newRangeBounds.lower == rangeBounds.lower && + newRangeBounds.upper == rangeBounds.upper; + } + + @Test(dependsOnMethods = {"testSetRangeBounds"}) + public void testGetRangeBoundsFromSecondFederate() + throws Exception + { + RegionHandleSet regionHandles = + rtiAmbassadors.get(0).getRegionHandleSetFactory().create(); + regionHandles.add(regionHandle1); + + RangeBounds newRangeBounds = rtiAmbassadors.get(1).getRangeBounds( + regionHandle1, dimensionHandle1); + + assert newRangeBounds.lower == rangeBounds.lower && + newRangeBounds.upper == rangeBounds.upper; + } + + @Test(dependsOnMethods = {"testGetRangeBoundsFromSecondFederate"}) + public void testDeleteRegion() + throws Exception + { + rtiAmbassadors.get(0).deleteRegion(regionHandle1); + rtiAmbassadors.get(1).deleteRegion(regionHandle2); + } +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mne...@us...> - 2006-11-15 01:31:11
|
Revision: 26 http://svn.sourceforge.net/ohla/?rev=26&view=rev Author: mnewcomb Date: 2006-11-14 17:31:09 -0800 (Tue, 14 Nov 2006) Log Message: ----------- more time management support Modified Paths: -------------- trunk/rti/src/java/net/sf/ohla/rti1516/fdd/Attribute.java trunk/rti/src/java/net/sf/ohla/rti1516/fdd/FDD.java trunk/rti/src/java/net/sf/ohla/rti1516/fdd/InteractionClass.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/time/TimeManager.java trunk/rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java trunk/rti/src/java/net/sf/ohla/rti1516/federation/TimeKeeper.java trunk/testsuite/src/java/net/sf/ohla/rti1516/BaseTestNG.java trunk/testsuite/src/java/net/sf/ohla/rti1516/DataDistributionManagementTestNG.java trunk/testsuite/src/java/net/sf/ohla/rti1516/DeclarationManagementTestNG.java trunk/testsuite/src/java/net/sf/ohla/rti1516/FederationManagementTestNG.java trunk/testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java trunk/testsuite/src/java/net/sf/ohla/rti1516/OwnershipManagementTestNG.java trunk/testsuite/src/java/net/sf/ohla/rti1516/SupportServicesTestNG.java Added Paths: ----------- trunk/rti/src/java/net/sf/ohla/rti1516/federate/time/TimeAdvanceType.java Modified: trunk/rti/src/java/net/sf/ohla/rti1516/fdd/Attribute.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/fdd/Attribute.java 2006-11-13 03:27:31 UTC (rev 25) +++ trunk/rti/src/java/net/sf/ohla/rti1516/fdd/Attribute.java 2006-11-15 01:31:09 UTC (rev 26) @@ -30,11 +30,7 @@ import hla.rti1516.AttributeHandle; import hla.rti1516.ErrorReadingFDD; import hla.rti1516.OrderType; -import static hla.rti1516.OrderType.RECEIVE; -import static hla.rti1516.OrderType.TIMESTAMP; import hla.rti1516.TransportationType; -import static hla.rti1516.TransportationType.HLA_BEST_EFFORT; -import static hla.rti1516.TransportationType.HLA_RELIABLE; public class Attribute implements Serializable @@ -113,11 +109,11 @@ if ("timestamp".equalsIgnoreCase(order)) { - orderType = TIMESTAMP; + orderType = OrderType.TIMESTAMP; } else if ("receive".equalsIgnoreCase(this.order)) { - orderType = RECEIVE; + orderType = OrderType.RECEIVE; } else { @@ -142,11 +138,11 @@ if ("hlabesteffort".equalsIgnoreCase(transportation)) { - transportationType = HLA_BEST_EFFORT; + transportationType = TransportationType.HLA_BEST_EFFORT; } else if ("hlareliable".equalsIgnoreCase(transportation)) { - transportationType = HLA_RELIABLE; + transportationType = TransportationType.HLA_RELIABLE; } else { Modified: trunk/rti/src/java/net/sf/ohla/rti1516/fdd/FDD.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/fdd/FDD.java 2006-11-13 03:27:31 UTC (rev 25) +++ trunk/rti/src/java/net/sf/ohla/rti1516/fdd/FDD.java 2006-11-15 01:31:09 UTC (rev 26) @@ -57,13 +57,9 @@ import hla.rti1516.ObjectClassHandle; import hla.rti1516.ObjectClassNotDefined; import hla.rti1516.OrderType; -import static hla.rti1516.OrderType.RECEIVE; -import static hla.rti1516.OrderType.TIMESTAMP; import hla.rti1516.ParameterHandle; import hla.rti1516.RangeBounds; import hla.rti1516.TransportationType; -import static hla.rti1516.TransportationType.HLA_BEST_EFFORT; -import static hla.rti1516.TransportationType.HLA_RELIABLE; public class FDD implements Serializable @@ -80,11 +76,11 @@ static { - orderTypeNames.put(TIMESTAMP, "TimeStamp"); - orderTypeNames.put(RECEIVE, "Receive"); + orderTypeNames.put(OrderType.TIMESTAMP, "TimeStamp"); + orderTypeNames.put(OrderType.RECEIVE, "Receive"); - orderTypesByName.put("TimeStamp", TIMESTAMP); - orderTypesByName.put("Receive", RECEIVE); + orderTypesByName.put("TimeStamp", OrderType.TIMESTAMP); + orderTypesByName.put("Receive", OrderType.RECEIVE); } protected static Map<TransportationType, String> transportationTypeNames = @@ -94,11 +90,15 @@ static { - transportationTypeNames.put(HLA_RELIABLE, "HLAreliable"); - transportationTypeNames.put(HLA_BEST_EFFORT, "HLAbestEffort"); + transportationTypeNames.put( + TransportationType.HLA_RELIABLE, "HLAreliable"); + transportationTypeNames.put( + TransportationType.HLA_BEST_EFFORT, "HLAbestEffort"); - transportationTypesByName.put("HLAreliable", HLA_RELIABLE); - transportationTypesByName.put("HLAbestEffort", HLA_BEST_EFFORT); + transportationTypesByName.put( + "HLAreliable", TransportationType.HLA_RELIABLE); + transportationTypesByName.put( + "HLAbestEffort", TransportationType.HLA_BEST_EFFORT); } protected Map<ObjectClassHandle, ObjectClass> objectClasses = Modified: trunk/rti/src/java/net/sf/ohla/rti1516/fdd/InteractionClass.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/fdd/InteractionClass.java 2006-11-13 03:27:31 UTC (rev 25) +++ trunk/rti/src/java/net/sf/ohla/rti1516/fdd/InteractionClass.java 2006-11-15 01:31:09 UTC (rev 26) @@ -35,12 +35,8 @@ import hla.rti1516.InteractionParameterNotDefined; import hla.rti1516.NameNotFound; import hla.rti1516.OrderType; -import static hla.rti1516.OrderType.RECEIVE; -import static hla.rti1516.OrderType.TIMESTAMP; import hla.rti1516.ParameterHandle; import hla.rti1516.TransportationType; -import static hla.rti1516.TransportationType.HLA_BEST_EFFORT; -import static hla.rti1516.TransportationType.HLA_RELIABLE; public class InteractionClass implements Serializable @@ -211,11 +207,11 @@ if ("timestamp".equalsIgnoreCase(order)) { - orderType = TIMESTAMP; + orderType = OrderType.TIMESTAMP; } else if ("receive".equalsIgnoreCase(this.order)) { - orderType = RECEIVE; + orderType = OrderType.RECEIVE; } else { @@ -245,11 +241,11 @@ if ("hlabesteffort".equalsIgnoreCase(transportation)) { - transportationType = HLA_BEST_EFFORT; + transportationType = TransportationType.HLA_BEST_EFFORT; } else if ("hlareliable".equalsIgnoreCase(transportation)) { - transportationType = HLA_RELIABLE; + transportationType = TransportationType.HLA_RELIABLE; } else { Modified: trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java 2006-11-13 03:27:31 UTC (rev 25) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java 2006-11-15 01:31:09 UTC (rev 26) @@ -202,8 +202,6 @@ import hla.rti1516.ObjectInstanceNameNotReserved; import hla.rti1516.ObjectInstanceNotKnown; import hla.rti1516.OrderType; -import static hla.rti1516.OrderType.RECEIVE; -import static hla.rti1516.OrderType.TIMESTAMP; import hla.rti1516.OwnershipAcquisitionPending; import hla.rti1516.ParameterHandle; import hla.rti1516.ParameterHandleFactory; @@ -1486,13 +1484,13 @@ timeManager.getTimeLock().readLock().lock(); try { - timeManager.checkIfInvalidLogicalTime(updateTime); + timeManager.updateAttributeValues(updateTime); OrderType sentOrderType = timeManager.isTimeRegulating() && updateTime != null ? - TIMESTAMP : RECEIVE; + OrderType.TIMESTAMP : OrderType.RECEIVE; - if (sentOrderType == TIMESTAMP) + if (sentOrderType == OrderType.TIMESTAMP) { messageRetractionHandle = messageRetractionManager.add(updateTime); } @@ -1563,13 +1561,13 @@ timeManager.getTimeLock().readLock().lock(); try { - timeManager.checkIfInvalidLogicalTime(sendTime); + timeManager.sendInteraction(sendTime); OrderType sentOrderType = timeManager.isTimeRegulating() && sendTime != null ? - TIMESTAMP : RECEIVE; + OrderType.TIMESTAMP : OrderType.RECEIVE; - if (sentOrderType == TIMESTAMP) + if (sentOrderType == OrderType.TIMESTAMP) { messageRetractionHandle = messageRetractionManager.add(sendTime); } @@ -1626,13 +1624,13 @@ timeManager.getTimeLock().readLock().lock(); try { - timeManager.checkIfInvalidLogicalTime(deleteTime); + timeManager.deleteObjectInstance(deleteTime); OrderType sentOrderType = timeManager.isTimeRegulating() && deleteTime != null ? - TIMESTAMP : RECEIVE; + OrderType.TIMESTAMP : OrderType.RECEIVE; - if (sentOrderType == TIMESTAMP) + if (sentOrderType == OrderType.TIMESTAMP) { messageRetractionHandle = messageRetractionManager.add(deleteTime); } @@ -2692,10 +2690,10 @@ OrderType sentOrderType = timeManager.isTimeRegulating() && sendTime != null ? - TIMESTAMP : RECEIVE; + OrderType.TIMESTAMP : OrderType.RECEIVE; MessageRetractionHandle messageRetractionHandle = null; - if (sentOrderType == TIMESTAMP) + if (sentOrderType == OrderType.TIMESTAMP) { messageRetractionHandle = messageRetractionManager.add(sendTime); } @@ -3444,11 +3442,11 @@ (ReflectAttributeValues) message; OrderType receivedOrderType = - reflectAttributeValues.getSentOrderType() == TIMESTAMP && - timeManager.isTimeConstrained() ? TIMESTAMP : RECEIVE; + reflectAttributeValues.getSentOrderType() == OrderType.TIMESTAMP && + timeManager.isTimeConstrained() ? OrderType.TIMESTAMP : OrderType.RECEIVE; reflectAttributeValues.setReceivedOrderType(receivedOrderType); - if (receivedOrderType == RECEIVE) + if (receivedOrderType == OrderType.RECEIVE) { // receive order callbacks need to be held until released if we are // constrained and in the time granted state if asynchronous delivery is @@ -3479,12 +3477,12 @@ ReceiveInteraction receiveInteraction = (ReceiveInteraction) message; OrderType receivedOrderType = - receiveInteraction.getSentOrderType() == TIMESTAMP && - timeManager.isTimeConstrained() ? TIMESTAMP : RECEIVE; + receiveInteraction.getSentOrderType() == OrderType.TIMESTAMP && + timeManager.isTimeConstrained() ? OrderType.TIMESTAMP : OrderType.RECEIVE; receiveInteraction.setReceivedOrderType(receivedOrderType); - if (receivedOrderType == RECEIVE) + if (receivedOrderType == OrderType.RECEIVE) { // receive order callbacks need to be held until released if we are // constrained and in the time granted state, if asynchronous delivery is @@ -3708,13 +3706,37 @@ public void federationSaved() throws FederateInternalError { - federateAmbassador.federationSaved(); + federateStateLock.writeLock().lock(); + try + { + federateAmbassador.federationSaved(); + } + finally + { + federateState = FederateState.ACTIVE; + + // TODO: unhold callbacks? + + federateStateLock.writeLock().unlock(); + } } public void federationNotSaved(SaveFailureReason reason) throws FederateInternalError { - federateAmbassador.federationNotSaved(reason); + federateStateLock.writeLock().lock(); + try + { + federateAmbassador.federationNotSaved(reason); + } + finally + { + federateState = FederateState.ACTIVE; + + // TODO: unhold callbacks? + + federateStateLock.writeLock().unlock(); + } } public void federationSaveStatusResponse( @@ -4163,21 +4185,21 @@ throws InvalidLogicalTime, NoRequestToEnableTimeRegulationWasPending, FederateInternalError { - federateAmbassador.timeRegulationEnabled(time); + timeManager.timeRegulationEnabled(time, federateAmbassador); } public void timeConstrainedEnabled(LogicalTime time) throws InvalidLogicalTime, NoRequestToEnableTimeConstrainedWasPending, FederateInternalError { - federateAmbassador.timeConstrainedEnabled(time); + timeManager.timeConstrainedEnabled(time, federateAmbassador); } public void timeAdvanceGrant(LogicalTime time) throws InvalidLogicalTime, JoinedFederateIsNotInTimeAdvancingState, FederateInternalError { - federateAmbassador.timeAdvanceGrant(time); + timeManager.timeAdvanceGrant(time, federateAmbassador); } public void requestRetraction(MessageRetractionHandle messageRetractionHandle) Added: trunk/rti/src/java/net/sf/ohla/rti1516/federate/time/TimeAdvanceType.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federate/time/TimeAdvanceType.java (rev 0) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federate/time/TimeAdvanceType.java 2006-11-15 01:31:09 UTC (rev 26) @@ -0,0 +1,24 @@ +/* + * Copyright (c) 2006, Michael Newcomb + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.sf.ohla.rti1516.federate.time; + +public enum TimeAdvanceType +{ + TIME_ADVANCE_REQUEST, TIME_ADVANCE_REQUEST_AVAILABLE, + NEXT_MESSAGE_REQUEST, NEXT_MESSAGE_REQUEST_AVAILABLE, + FLUSH_QUEUE_REQUEST +} Modified: trunk/rti/src/java/net/sf/ohla/rti1516/federate/time/TimeManager.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federate/time/TimeManager.java 2006-11-13 03:27:31 UTC (rev 25) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federate/time/TimeManager.java 2006-11-15 01:31:09 UTC (rev 26) @@ -20,14 +20,6 @@ import java.util.concurrent.locks.ReentrantReadWriteLock; import net.sf.ohla.rti1516.federate.Federate; -import static net.sf.ohla.rti1516.federate.time.TemporalState.TIME_ADVANCING; -import static net.sf.ohla.rti1516.federate.time.TemporalState.TIME_GRANTED; -import static net.sf.ohla.rti1516.federate.time.TimeConstrainedState.BECOMING_TIME_CONSTRAINED; -import static net.sf.ohla.rti1516.federate.time.TimeConstrainedState.NOT_TIME_CONSTRAINED; -import static net.sf.ohla.rti1516.federate.time.TimeConstrainedState.TIME_CONSTRAINED; -import static net.sf.ohla.rti1516.federate.time.TimeRegulatingState.BECOMING_TIME_REGULATING; -import static net.sf.ohla.rti1516.federate.time.TimeRegulatingState.NOT_TIME_REGULATING; -import static net.sf.ohla.rti1516.federate.time.TimeRegulatingState.TIME_REGULATING; import net.sf.ohla.rti1516.messages.DisableTimeConstrained; import net.sf.ohla.rti1516.messages.DisableTimeRegulation; import net.sf.ohla.rti1516.messages.EnableTimeConstrained; @@ -38,6 +30,11 @@ import org.apache.mina.common.WriteFuture; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import hla.rti1516.FederateAmbassador; +import hla.rti1516.IllegalTimeArithmetic; import hla.rti1516.InTimeAdvancingState; import hla.rti1516.InvalidLogicalTime; import hla.rti1516.InvalidLookahead; @@ -55,20 +52,27 @@ public class TimeManager { + private static final Logger log = LoggerFactory.getLogger(TimeManager.class); + protected Federate federate; protected ReadWriteLock timeLock = new ReentrantReadWriteLock(true); - protected TemporalState temporalState = TIME_GRANTED; - protected TimeRegulatingState timeRegulatingState = NOT_TIME_REGULATING; - protected TimeConstrainedState timeConstrainedState = NOT_TIME_CONSTRAINED; + protected TemporalState temporalState = TemporalState.TIME_GRANTED; + protected TimeRegulatingState timeRegulatingState = + TimeRegulatingState.NOT_TIME_REGULATING; + protected TimeConstrainedState timeConstrainedState = + TimeConstrainedState.NOT_TIME_CONSTRAINED; - protected LogicalTime time; + protected LogicalTime federateTime; protected LogicalTime galt; protected LogicalTime lits; protected LogicalTimeInterval lookahead; + protected LogicalTime advanceRequestTime; + protected TimeAdvanceType advanceRequestTimeType; + public TimeManager(Federate federate) { this.federate = federate; @@ -81,22 +85,22 @@ public boolean isTimeRegulating() { - return timeRegulatingState == TIME_REGULATING; + return timeRegulatingState == TimeRegulatingState.TIME_REGULATING; } public boolean isTimeConstrained() { - return timeConstrainedState == TIME_CONSTRAINED; + return timeConstrainedState == TimeConstrainedState.TIME_CONSTRAINED; } public boolean isTimeAdvancing() { - return temporalState == TIME_ADVANCING; + return temporalState == TemporalState.TIME_ADVANCING; } public boolean isTimeGranted() { - return temporalState == TIME_GRANTED; + return temporalState == TemporalState.TIME_GRANTED; } public boolean isTimeConstrainedAndTimeGranted() @@ -111,7 +115,7 @@ timeLock.writeLock().lock(); try { - if (timeRegulatingState == TIME_REGULATING) + if (timeRegulatingState == TimeRegulatingState.TIME_REGULATING) { throw new TimeRegulationAlreadyEnabled(); } @@ -134,7 +138,7 @@ this.lookahead = lookahead; - timeRegulatingState = BECOMING_TIME_REGULATING; + timeRegulatingState = TimeRegulatingState.BECOMING_TIME_REGULATING; } finally { @@ -162,7 +166,7 @@ throw new RTIinternalError("error communicating with RTI"); } - timeRegulatingState = NOT_TIME_REGULATING; + timeRegulatingState = TimeRegulatingState.NOT_TIME_REGULATING; } finally { @@ -177,7 +181,7 @@ timeLock.writeLock().lock(); try { - if (timeConstrainedState == TIME_CONSTRAINED) + if (timeConstrainedState == TimeConstrainedState.TIME_CONSTRAINED) { throw new TimeConstrainedAlreadyEnabled(); } @@ -198,7 +202,7 @@ throw new RTIinternalError("error communicating with RTI"); } - timeConstrainedState = BECOMING_TIME_CONSTRAINED; + timeConstrainedState = TimeConstrainedState.BECOMING_TIME_CONSTRAINED; } finally { @@ -226,7 +230,7 @@ throw new RTIinternalError("error communicating with RTI"); } - timeConstrainedState = NOT_TIME_CONSTRAINED; + timeConstrainedState = TimeConstrainedState.NOT_TIME_CONSTRAINED; // TODO: release all TSO messages } @@ -250,6 +254,9 @@ checkIfRequestForTimeRegulationPending(); checkIfRequestForTimeConstrainedPending(); + advanceRequestTime = time; + advanceRequestTimeType = TimeAdvanceType.TIME_ADVANCE_REQUEST; + WriteFuture writeFuture = federate.getRTISession().write(new TimeAdvanceRequest(time)); @@ -264,7 +271,7 @@ // TODO: will need to send to peers as well - temporalState = TIME_ADVANCING; + temporalState = TemporalState.TIME_ADVANCING; // release any callbacks held until we are time advancing // @@ -290,6 +297,8 @@ checkIfRequestForTimeRegulationPending(); checkIfRequestForTimeConstrainedPending(); + advanceRequestTime = time; + WriteFuture writeFuture = federate.getRTISession().write(new TimeAdvanceRequestAvailable(time)); @@ -302,7 +311,7 @@ throw new RTIinternalError("error communicating with RTI"); } - temporalState = TIME_ADVANCING; + temporalState = TemporalState.TIME_ADVANCING; // release any callbacks held until we are time advancing // @@ -328,6 +337,8 @@ checkIfRequestForTimeRegulationPending(); checkIfRequestForTimeConstrainedPending(); + advanceRequestTime = time; + WriteFuture writeFuture = federate.getRTISession().write(new TimeAdvanceRequest(time)); @@ -340,7 +351,7 @@ throw new RTIinternalError("error communicating with RTI"); } - temporalState = TIME_ADVANCING; + temporalState = TemporalState.TIME_ADVANCING; // release any callbacks held until we are time advancing // @@ -366,6 +377,8 @@ checkIfRequestForTimeConstrainedPending(); checkIfRequestForTimeRegulationPending(); + advanceRequestTime = time; + WriteFuture writeFuture = federate.getRTISession().write(new TimeAdvanceRequest(time)); @@ -378,7 +391,7 @@ throw new RTIinternalError("error communicating with RTI"); } - temporalState = TIME_ADVANCING; + temporalState = TemporalState.TIME_ADVANCING; // release any callbacks held until we are time advancing // @@ -404,6 +417,8 @@ checkIfRequestForTimeRegulationPending(); checkIfRequestForTimeConstrainedPending(); + advanceRequestTime = time; + WriteFuture writeFuture = federate.getRTISession().write(new TimeAdvanceRequest(time)); @@ -416,7 +431,7 @@ throw new RTIinternalError("error communicating with RTI"); } - temporalState = TIME_ADVANCING; + temporalState = TemporalState.TIME_ADVANCING; // release any callbacks held until we are time advancing // @@ -452,7 +467,7 @@ timeLock.readLock().lock(); try { - return time; + return federateTime; } finally { @@ -525,6 +540,68 @@ } } + public void timeRegulationEnabled(LogicalTime time, + FederateAmbassador federateAmbassador) + { + timeLock.writeLock().lock(); + try + { + federateTime = time; + + federateAmbassador.timeRegulationEnabled(time); + } + catch (Throwable t) + { + log.warn(String.format( + "federate unable enable time regulation to: %s", time), t); + } + finally + { + timeLock.writeLock().unlock(); + } + } + + public void timeConstrainedEnabled(LogicalTime time, + FederateAmbassador federateAmbassador) + { + timeLock.writeLock().lock(); + try + { + federateTime = time; + + federateAmbassador.timeConstrainedEnabled(time); + } + catch (Throwable t) + { + log.warn(String.format( + "federate unable enable time constrained to: %s", time), t); + } + finally + { + timeLock.writeLock().unlock(); + } + } + + public void timeAdvanceGrant(LogicalTime time, + FederateAmbassador federateAmbassador) + { + timeLock.writeLock().lock(); + try + { + federateTime = time; + + federateAmbassador.timeAdvanceGrant(time); + } + catch (Throwable t) + { + log.warn(String.format("federate unable to advance to: %s", time), t); + } + finally + { + timeLock.writeLock().unlock(); + } + } + public void checkIfInTimeAdvancingState() throws InTimeAdvancingState { @@ -546,7 +623,7 @@ public void checkIfRequestForTimeRegulationPending() throws RequestForTimeRegulationPending { - if (timeRegulatingState == BECOMING_TIME_REGULATING) + if (timeRegulatingState == TimeRegulatingState.BECOMING_TIME_REGULATING) { throw new RequestForTimeRegulationPending(); } @@ -564,7 +641,7 @@ public void checkIfRequestForTimeConstrainedPending() throws RequestForTimeConstrainedPending { - if (timeConstrainedState == BECOMING_TIME_CONSTRAINED) + if (timeConstrainedState == TimeConstrainedState.BECOMING_TIME_CONSTRAINED) { throw new RequestForTimeConstrainedPending(); } @@ -573,21 +650,105 @@ public void checkIfLogicalTimeAlreadyPassed(LogicalTime time) throws LogicalTimeAlreadyPassed { - if (time.compareTo(this.time) <= 0) + if (time.compareTo(federateTime) <= 0) { throw new LogicalTimeAlreadyPassed( - String.format("%s <= %s", time, this.time)); + String.format("%s <= %s", time, federateTime)); } } public void checkIfInvalidLogicalTime(LogicalTime time) throws InvalidLogicalTime { + if (time == null) + { + throw new InvalidLogicalTime("null"); + } + + // TODO: check against factory type? } public void checkIfInvalidLookahead(LogicalTimeInterval lookahead) throws InvalidLookahead { + if (lookahead == null) + { + throw new InvalidLookahead("null"); + } + + // TODO: check against factory type? } + + public void updateAttributeValues(LogicalTime updateTime) + throws InvalidLogicalTime + { + checkIfInvalidTimestamp(updateTime); + } + + public void sendInteraction(LogicalTime sendTime) + throws InvalidLogicalTime + { + checkIfInvalidTimestamp(sendTime); + } + + public void deleteObjectInstance(LogicalTime deleteTime) + throws InvalidLogicalTime + { + checkIfInvalidTimestamp(deleteTime); + } + + public void checkIfInvalidTimestamp(LogicalTime time) + throws InvalidLogicalTime + { + checkIfInvalidLogicalTime(time); + + LogicalTime minimumTime = + isTimeAdvancing() ? advanceRequestTime : federateTime; + switch (advanceRequestTimeType) + { + case TIME_ADVANCE_REQUEST: + case NEXT_MESSAGE_REQUEST: + { + if (lookahead.isZero()) + { + // handle special case when lookahead is 0 + + if (time.compareTo(minimumTime) <= 0) + { + throw new InvalidLogicalTime( + String.format("%s <= %s", time, minimumTime)); + } + + break; + } + } + case TIME_ADVANCE_REQUEST_AVAILABLE: + case NEXT_MESSAGE_REQUEST_AVAILABLE: + case FLUSH_QUEUE_REQUEST: + { + try + { + LogicalTime minimumTimePlusLookahead = minimumTime.add(lookahead); + + if (time.compareTo(minimumTimePlusLookahead) < 0) + { + throw new InvalidLogicalTime(String.format( + "%s < %s (%s + %s)", time, minimumTimePlusLookahead, + minimumTime, lookahead)); + } + } + catch (IllegalTimeArithmetic ita) + { + throw new InvalidLogicalTime(ita); + } + + break; + } + default: + { + assert false : + String.format("unknown TimeAdvanceType: %s", advanceRequestTimeType); + } + } + } } - Modified: trunk/rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java 2006-11-13 03:27:31 UTC (rev 25) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java 2006-11-15 01:31:09 UTC (rev 26) @@ -1269,8 +1269,8 @@ federationExecutionStateLock.readLock().lock(); try { - timeKeeper.enableTimeRegulation( - getFederateHandle(session), enableTimeRegulation.getLookahead()); + timeKeeper.enableTimeRegulation(session, getFederateHandle(session), + enableTimeRegulation.getLookahead()); } finally { @@ -1298,7 +1298,7 @@ federationExecutionStateLock.readLock().lock(); try { - timeKeeper.enableTimeConstrained(getFederateHandle(session)); + timeKeeper.enableTimeConstrained(session, getFederateHandle(session)); } finally { @@ -1479,9 +1479,18 @@ federatesLock.lock(); try { - if (federateSessions.isEmpty()) + if (joinFederationExecution.getMobileFederateServices() == null) { - // this the first federate, use it's mobile federate services + log.warn("federate did not specify MobileFederateServices: {}", + federateHandle); + } + else if (timeKeeper != null) + { + // TODO: ensure each federate has the same mobile federate services + } + else + { + // use the first non-null mobile federate services // timeKeeper = new TimeKeeper( this, joinFederationExecution.getMobileFederateServices()); Modified: trunk/rti/src/java/net/sf/ohla/rti1516/federation/TimeKeeper.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federation/TimeKeeper.java 2006-11-13 03:27:31 UTC (rev 25) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federation/TimeKeeper.java 2006-11-15 01:31:09 UTC (rev 26) @@ -8,7 +8,11 @@ import java.util.concurrent.locks.ReentrantLock; import net.sf.ohla.rti1516.federate.callbacks.TimeAdvanceGrant; +import net.sf.ohla.rti1516.federate.callbacks.TimeRegulationEnabled; +import net.sf.ohla.rti1516.federate.callbacks.TimeConstrainedEnabled; +import org.apache.mina.common.IoSession; + import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -50,13 +54,16 @@ minAdvanceRequest = mobileFederateServices.timeFactory.makeFinal(); } - public void enableTimeRegulation(FederateHandle federateHandle, + public void enableTimeRegulation(IoSession session, + FederateHandle federateHandle, LogicalTimeInterval lookahead) { timeLock.lock(); try { timeRegulatingFederates.put(federateHandle, lookahead); + + session.write(new TimeRegulationEnabled(time)); } finally { @@ -77,12 +84,15 @@ } } - public void enableTimeConstrained(FederateHandle federateHandle) + public void enableTimeConstrained(IoSession session, + FederateHandle federateHandle) { timeLock.lock(); try { timeConstrainedFederates.add(federateHandle); + + session.write(new TimeConstrainedEnabled(time)); } finally { Modified: trunk/testsuite/src/java/net/sf/ohla/rti1516/BaseTestNG.java =================================================================== --- trunk/testsuite/src/java/net/sf/ohla/rti1516/BaseTestNG.java 2006-11-13 03:27:31 UTC (rev 25) +++ trunk/testsuite/src/java/net/sf/ohla/rti1516/BaseTestNG.java 2006-11-15 01:31:09 UTC (rev 26) @@ -26,6 +26,7 @@ import org.testng.annotations.Test; import hla.rti1516.RTIambassador; +import hla.rti1516.MobileFederateServices; import hla.rti1516.jlc.RtiFactory; import hla.rti1516.jlc.RtiFactoryFactory; @@ -39,6 +40,10 @@ protected int rtiAmbassadorCount; protected List<RTIambassador> rtiAmbassadors; + protected MobileFederateServices mobileFederateServices = + new MobileFederateServices( + new Integer64TimeFactory(), new Integer64TimeIntervalFactory()); + protected BaseTestNG() { this(1); Modified: trunk/testsuite/src/java/net/sf/ohla/rti1516/DataDistributionManagementTestNG.java =================================================================== --- trunk/testsuite/src/java/net/sf/ohla/rti1516/DataDistributionManagementTestNG.java 2006-11-13 03:27:31 UTC (rev 25) +++ trunk/testsuite/src/java/net/sf/ohla/rti1516/DataDistributionManagementTestNG.java 2006-11-15 01:31:09 UTC (rev 26) @@ -21,12 +21,12 @@ import org.testng.annotations.Test; import hla.rti1516.jlc.NullFederateAmbassador; -import static hla.rti1516.ResignAction.NO_ACTION; import hla.rti1516.DimensionHandleSet; import hla.rti1516.DimensionHandle; import hla.rti1516.RegionHandle; import hla.rti1516.RangeBounds; import hla.rti1516.RegionHandleSet; +import hla.rti1516.ResignAction; public class DataDistributionManagementTestNG extends BaseTestNG @@ -78,8 +78,8 @@ public void teardown() throws Exception { - rtiAmbassadors.get(0).resignFederationExecution(NO_ACTION); - rtiAmbassadors.get(1).resignFederationExecution(NO_ACTION); + rtiAmbassadors.get(0).resignFederationExecution(ResignAction.NO_ACTION); + rtiAmbassadors.get(1).resignFederationExecution(ResignAction.NO_ACTION); rtiAmbassadors.get(0).destroyFederationExecution(FEDERATION_NAME); } Modified: trunk/testsuite/src/java/net/sf/ohla/rti1516/DeclarationManagementTestNG.java =================================================================== --- trunk/testsuite/src/java/net/sf/ohla/rti1516/DeclarationManagementTestNG.java 2006-11-13 03:27:31 UTC (rev 25) +++ trunk/testsuite/src/java/net/sf/ohla/rti1516/DeclarationManagementTestNG.java 2006-11-15 01:31:09 UTC (rev 26) @@ -25,7 +25,7 @@ import hla.rti1516.InteractionClassNotDefined; import hla.rti1516.ObjectClassHandle; import hla.rti1516.ObjectClassNotDefined; -import static hla.rti1516.ResignAction.NO_ACTION; +import hla.rti1516.ResignAction; import hla.rti1516.jlc.NullFederateAmbassador; @Test(groups = {"Declaration Management"}) @@ -67,7 +67,7 @@ public void teardown() throws Exception { - rtiAmbassadors.get(0).resignFederationExecution(NO_ACTION); + rtiAmbassadors.get(0).resignFederationExecution(ResignAction.NO_ACTION); rtiAmbassadors.get(0).destroyFederationExecution(FEDERATION_NAME); } Modified: trunk/testsuite/src/java/net/sf/ohla/rti1516/FederationManagementTestNG.java =================================================================== --- trunk/testsuite/src/java/net/sf/ohla/rti1516/FederationManagementTestNG.java 2006-11-13 03:27:31 UTC (rev 25) +++ trunk/testsuite/src/java/net/sf/ohla/rti1516/FederationManagementTestNG.java 2006-11-15 01:31:09 UTC (rev 26) @@ -38,7 +38,7 @@ import hla.rti1516.FederateInternalError; import hla.rti1516.SynchronizationPointFailureReason; import hla.rti1516.SynchronizationPointLabelNotAnnounced; -import static hla.rti1516.ResignAction.NO_ACTION; +import hla.rti1516.ResignAction; import hla.rti1516.jlc.NullFederateAmbassador; @Test(groups = {"Federation Managmenet"}) @@ -137,9 +137,9 @@ public void testResignFederationExecution() throws Exception { - rtiAmbassadors.get(0).resignFederationExecution(NO_ACTION); - rtiAmbassadors.get(1).resignFederationExecution(NO_ACTION); - rtiAmbassadors.get(2).resignFederationExecution(NO_ACTION); + rtiAmbassadors.get(0).resignFederationExecution(ResignAction.NO_ACTION); + rtiAmbassadors.get(1).resignFederationExecution(ResignAction.NO_ACTION); + rtiAmbassadors.get(2).resignFederationExecution(ResignAction.NO_ACTION); } @Test(expectedExceptions = {FederationExecutionDoesNotExist.class}) @@ -155,7 +155,7 @@ public void testResignFederationExecutionThatNotAMember() throws Exception { - rtiAmbassadors.get(0).resignFederationExecution(NO_ACTION); + rtiAmbassadors.get(0).resignFederationExecution(ResignAction.NO_ACTION); } @Test(dependsOnMethods = {"testJoinFederationExecutionAgain"}) Modified: trunk/testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java =================================================================== --- trunk/testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java 2006-11-13 03:27:31 UTC (rev 25) +++ trunk/testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java 2006-11-15 01:31:09 UTC (rev 26) @@ -44,9 +44,9 @@ import hla.rti1516.ParameterHandle; import hla.rti1516.ParameterHandleValueMap; import hla.rti1516.RTIambassador; -import static hla.rti1516.ResignAction.NO_ACTION; import hla.rti1516.TransportationType; import hla.rti1516.UnknownName; +import hla.rti1516.ResignAction; import hla.rti1516.jlc.NullFederateAmbassador; @Test(groups = {"Object Management"}) @@ -166,9 +166,9 @@ public void teardown() throws Exception { - rtiAmbassadors.get(0).resignFederationExecution(NO_ACTION); - rtiAmbassadors.get(1).resignFederationExecution(NO_ACTION); - rtiAmbassadors.get(2).resignFederationExecution(NO_ACTION); + rtiAmbassadors.get(0).resignFederationExecution(ResignAction.NO_ACTION); + rtiAmbassadors.get(1).resignFederationExecution(ResignAction.NO_ACTION); + rtiAmbassadors.get(2).resignFederationExecution(ResignAction.NO_ACTION); rtiAmbassadors.get(0).destroyFederationExecution(FEDERATION_NAME); } Modified: trunk/testsuite/src/java/net/sf/ohla/rti1516/OwnershipManagementTestNG.java =================================================================== --- trunk/testsuite/src/java/net/sf/ohla/rti1516/OwnershipManagementTestNG.java 2006-11-13 03:27:31 UTC (rev 25) +++ trunk/testsuite/src/java/net/sf/ohla/rti1516/OwnershipManagementTestNG.java 2006-11-15 01:31:09 UTC (rev 26) @@ -41,8 +41,8 @@ import hla.rti1516.ObjectInstanceNotKnown; import hla.rti1516.OrderType; import hla.rti1516.RTIambassador; -import static hla.rti1516.ResignAction.NO_ACTION; import hla.rti1516.TransportationType; +import hla.rti1516.ResignAction; import hla.rti1516.jlc.NullFederateAmbassador; @Test(groups = {"Ownership Management"}) @@ -122,8 +122,8 @@ { rtiAmbassadors.get(0).deleteObjectInstance(objectInstanceHandle, null); - rtiAmbassadors.get(0).resignFederationExecution(NO_ACTION); - rtiAmbassadors.get(1).resignFederationExecution(NO_ACTION); + rtiAmbassadors.get(0).resignFederationExecution(ResignAction.NO_ACTION); + rtiAmbassadors.get(1).resignFederationExecution(ResignAction.NO_ACTION); rtiAmbassadors.get(0).destroyFederationExecution(FEDERATION_NAME); } Modified: trunk/testsuite/src/java/net/sf/ohla/rti1516/SupportServicesTestNG.java =================================================================== --- trunk/testsuite/src/java/net/sf/ohla/rti1516/SupportServicesTestNG.java 2006-11-13 03:27:31 UTC (rev 25) +++ trunk/testsuite/src/java/net/sf/ohla/rti1516/SupportServicesTestNG.java 2006-11-15 01:31:09 UTC (rev 26) @@ -36,8 +36,8 @@ import hla.rti1516.ObjectClassHandle; import hla.rti1516.OrderType; import hla.rti1516.ParameterHandle; -import static hla.rti1516.ResignAction.NO_ACTION; import hla.rti1516.TransportationType; +import hla.rti1516.ResignAction; import hla.rti1516.jlc.NullFederateAmbassador; @Test(groups = {"Support Services"}) @@ -57,7 +57,7 @@ public void teardown() throws Exception { - rtiAmbassadors.get(0).resignFederationExecution(NO_ACTION); + rtiAmbassadors.get(0).resignFederationExecution(ResignAction.NO_ACTION); rtiAmbassadors.get(0).destroyFederationExecution(FEDERATION_NAME); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mne...@us...> - 2006-11-15 23:17:58
|
Revision: 28 http://svn.sourceforge.net/ohla/?rev=28&view=rev Author: mnewcomb Date: 2006-11-15 15:17:58 -0800 (Wed, 15 Nov 2006) Log Message: ----------- more time management support Modified Paths: -------------- trunk/resources/testsuite/ieee-1516-testng.xml trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/time/TimeManager.java trunk/testsuite/src/java/net/sf/ohla/rti1516/TimeManagementTestNG.java Modified: trunk/resources/testsuite/ieee-1516-testng.xml =================================================================== --- trunk/resources/testsuite/ieee-1516-testng.xml 2006-11-15 01:32:16 UTC (rev 27) +++ trunk/resources/testsuite/ieee-1516-testng.xml 2006-11-15 23:17:58 UTC (rev 28) @@ -46,6 +46,12 @@ </classes> </test> + <test name="IEEE 1516 - Time Management"> + <classes> + <class name="net.sf.ohla.rti1516.TimeManagementTestNG"/> + </classes> + </test> + <test name="IEEE 1516 - Data Distribution Management"> <classes> <class name="net.sf.ohla.rti1516.DataDistributionManagementTestNG"/> Modified: trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java 2006-11-15 01:32:16 UTC (rev 27) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java 2006-11-15 23:17:58 UTC (rev 28) @@ -61,6 +61,7 @@ import net.sf.ohla.rti1516.federate.callbacks.ReflectAttributeValues; import net.sf.ohla.rti1516.federate.callbacks.SynchronizationPointRegistrationFailed; import net.sf.ohla.rti1516.federate.callbacks.SynchronizationPointRegistrationSucceeded; +import net.sf.ohla.rti1516.federate.callbacks.RemoveObjectInstance; import net.sf.ohla.rti1516.federate.filter.InterestManagementFilter; import net.sf.ohla.rti1516.federate.objects.ObjectManager; import net.sf.ohla.rti1516.federate.time.TimeManager; @@ -576,9 +577,25 @@ { } - boolean hold = timeManager.isTimeConstrainedAndTimeGranted() && - !isAsynchronousDeliveryEnabled(); + boolean hold = false; + if (message instanceof ReflectAttributeValues || + message instanceof ReceiveInteraction || + message instanceof RemoveObjectInstance) + { + timeManager.getTimeLock().readLock().lock(); + try + { + hold = !isAsynchronousDeliveryEnabled() && + timeManager.isTimeConstrainedAndTimeGranted(); + + } + finally + { + timeManager.getTimeLock().readLock().unlock(); + } + } + callbackManager.add((Callback) message, hold); } else if (message instanceof ObjectInstanceNameReserved) @@ -3570,19 +3587,22 @@ protected class FederateAmbassadorInterceptor extends NullFederateAmbassador { + @Override public void synchronizationPointRegistrationSucceeded(String label) throws FederateInternalError { federateAmbassador.synchronizationPointRegistrationSucceeded(label); } - public void synchronizationPointRegistrationFailed(String label, - SynchronizationPointFailureReason reason) + @Override + public void synchronizationPointRegistrationFailed( + String label, SynchronizationPointFailureReason reason) throws FederateInternalError { federateAmbassador.synchronizationPointRegistrationFailed(label, reason); } + @Override public void announceSynchronizationPoint(String label, byte[] tag) throws FederateInternalError { @@ -3609,6 +3629,7 @@ federateAmbassador.announceSynchronizationPoint(label, tag); } + @Override public void federationSynchronized(String label) throws FederateInternalError { @@ -3633,6 +3654,7 @@ federateAmbassador.federationSynchronized(label); } + @Override public void initiateFederateSave(String label) throws UnableToPerformSave, FederateInternalError { @@ -3668,6 +3690,7 @@ } } + @Override public void initiateFederateSave(String label, LogicalTime saveTime) throws InvalidLogicalTime, UnableToPerformSave, FederateInternalError { @@ -3703,6 +3726,7 @@ } } + @Override public void federationSaved() throws FederateInternalError { @@ -3721,6 +3745,7 @@ } } + @Override public void federationNotSaved(SaveFailureReason reason) throws FederateInternalError { @@ -3739,6 +3764,7 @@ } } + @Override public void federationSaveStatusResponse( FederateHandleSaveStatusPair[] response) throws FederateInternalError @@ -3746,24 +3772,28 @@ federateAmbassador.federationSaveStatusResponse(response); } + @Override public void requestFederationRestoreSucceeded(String label) throws FederateInternalError { federateAmbassador.requestFederationRestoreSucceeded(label); } + @Override public void requestFederationRestoreFailed(String label) throws FederateInternalError { federateAmbassador.requestFederationRestoreFailed(label); } + @Override public void federationRestoreBegun() throws FederateInternalError { federateAmbassador.federationRestoreBegun(); } + @Override public void initiateFederateRestore(String label, FederateHandle federateHandle) throws SpecifiedSaveLabelDoesNotExist, CouldNotInitiateRestore, @@ -3772,18 +3802,21 @@ federateAmbassador.initiateFederateRestore(label, federateHandle); } + @Override public void federationRestored() throws FederateInternalError { federateAmbassador.federationRestored(); } + @Override public void federationNotRestored(RestoreFailureReason reason) throws FederateInternalError { federateAmbassador.federationNotRestored(reason); } + @Override public void federationRestoreStatusResponse( FederateHandleRestoreStatusPair[] response) throws FederateInternalError @@ -3791,6 +3824,7 @@ federateAmbassador.federationRestoreStatusResponse(response); } + @Override public void startRegistrationForObjectClass( ObjectClassHandle objectClassHandle) throws ObjectClassNotPublished, FederateInternalError @@ -3798,6 +3832,7 @@ federateAmbassador.startRegistrationForObjectClass(objectClassHandle); } + @Override public void stopRegistrationForObjectClass( ObjectClassHandle objectClassHandle) throws ObjectClassNotPublished, FederateInternalError @@ -3805,12 +3840,14 @@ federateAmbassador.stopRegistrationForObjectClass(objectClassHandle); } + @Override public void turnInteractionsOn(InteractionClassHandle interactionClassHandle) throws InteractionClassNotPublished, FederateInternalError { federateAmbassador.turnInteractionsOn(interactionClassHandle); } + @Override public void turnInteractionsOff( InteractionClassHandle interactionClassHandle) throws InteractionClassNotPublished, FederateInternalError @@ -3818,18 +3855,21 @@ federateAmbassador.turnInteractionsOff(interactionClassHandle); } + @Override public void objectInstanceNameReservationSucceeded(String name) throws UnknownName, FederateInternalError { federateAmbassador.objectInstanceNameReservationSucceeded(name); } + @Override public void objectInstanceNameReservationFailed(String name) throws UnknownName, FederateInternalError { federateAmbassador.objectInstanceNameReservationFailed(name); } + @Override public void discoverObjectInstance( ObjectInstanceHandle objectInstanceHandle, ObjectClassHandle objectClassHandle, String name) @@ -3839,6 +3879,7 @@ objectInstanceHandle, objectClassHandle, name, federateAmbassador); } + @Override public void reflectAttributeValues( ObjectInstanceHandle objectInstanceHandle, AttributeHandleValueMap attributeValues, byte[] tag, @@ -3851,6 +3892,7 @@ transportationType, null, null, null, null, federateAmbassador); } + @Override public void reflectAttributeValues( ObjectInstanceHandle objectInstanceHandle, AttributeHandleValueMap attributeValues, byte[] tag, @@ -3865,6 +3907,7 @@ federateAmbassador); } + @Override public void reflectAttributeValues( ObjectInstanceHandle objectInstanceHandle, AttributeHandleValueMap attributeValues, byte[] tag, @@ -3879,6 +3922,7 @@ federateAmbassador); } + @Override public void reflectAttributeValues( ObjectInstanceHandle objectInstanceHandle, AttributeHandleValueMap attributeValues, byte[] tag, @@ -3894,6 +3938,7 @@ federateAmbassador); } + @Override public void reflectAttributeValues( ObjectInstanceHandle objectInstanceHandle, AttributeHandleValueMap attributeValues, byte[] tag, OrderType sentOrderType, @@ -3909,6 +3954,7 @@ messageRetractionHandle, null, federateAmbassador); } + @Override public void reflectAttributeValues( ObjectInstanceHandle objectInstanceHandle, AttributeHandleValueMap attributeValues, byte[] tag, OrderType sentOrderType, @@ -3925,6 +3971,7 @@ messageRetractionHandle, regionHandles, federateAmbassador); } + @Override public void receiveInteraction( InteractionClassHandle interactionClassHandle, ParameterHandleValueMap parameterValues, byte[] tag, @@ -3937,6 +3984,7 @@ transportationType, null, null, null, null, federateAmbassador); } + @Override public void receiveInteraction( InteractionClassHandle interactionClassHandle, ParameterHandleValueMap parameterValues, byte[] tag, @@ -3951,6 +3999,7 @@ federateAmbassador); } + @Override public void receiveInteraction( InteractionClassHandle interactionClassHandle, ParameterHandleValueMap parameterValues, byte[] tag, @@ -3965,6 +4014,7 @@ federateAmbassador); } + @Override public void receiveInteraction( InteractionClassHandle interactionClassHandle, ParameterHandleValueMap parameterValues, byte[] tag, @@ -3980,6 +4030,7 @@ federateAmbassador); } + @Override public void receiveInteraction( InteractionClassHandle interactionClassHandle, ParameterHandleValueMap parameterValues, byte[] tag, @@ -3996,6 +4047,7 @@ messageRetractionHandle, null, federateAmbassador); } + @Override public void receiveInteraction( InteractionClassHandle interactionClassHandle, ParameterHandleValueMap parameterValues, byte[] tag, @@ -4013,6 +4065,7 @@ messageRetractionHandle, regionHandles, federateAmbassador); } + @Override public void removeObjectInstance(ObjectInstanceHandle objectInstanceHandle, byte[] tag, OrderType sentOrderType) throws ObjectInstanceNotKnown, FederateInternalError @@ -4022,6 +4075,7 @@ federateAmbassador); } + @Override public void removeObjectInstance(ObjectInstanceHandle objectInstanceHandle, byte[] tag, OrderType sentOrderType, LogicalTime deleteTime, @@ -4033,6 +4087,7 @@ null, federateAmbassador); } + @Override public void removeObjectInstance(ObjectInstanceHandle objectInstanceHandle, byte[] tag, OrderType sentOrderType, LogicalTime deleteTime, @@ -4045,6 +4100,7 @@ messageRetractionHandle, federateAmbassador); } + @Override public void attributesInScope(ObjectInstanceHandle objectInstanceHandle, AttributeHandleSet attributeHandles) throws ObjectInstanceNotKnown, AttributeNotRecognized, @@ -4054,6 +4110,7 @@ objectInstanceHandle, attributeHandles); } + @Override public void attributesOutOfScope(ObjectInstanceHandle objectInstanceHandle, AttributeHandleSet attributeHandles) throws ObjectInstanceNotKnown, AttributeNotRecognized, @@ -4063,6 +4120,7 @@ objectInstanceHandle, attributeHandles); } + @Override public void provideAttributeValueUpdate( ObjectInstanceHandle objectInstanceHandle, AttributeHandleSet attributeHandles, byte[] tag) @@ -4073,6 +4131,7 @@ objectInstanceHandle, attributeHandles, tag); } + @Override public void turnUpdatesOnForObjectInstance( ObjectInstanceHandle objectInstanceHandle, AttributeHandleSet attributeHandles) @@ -4083,6 +4142,7 @@ objectInstanceHandle, attributeHandles); } + @Override public void turnUpdatesOffForObjectInstance( ObjectInstanceHandle objectInstanceHandle, AttributeHandleSet attributeHandles) @@ -4093,6 +4153,7 @@ objectInstanceHandle, attributeHandles); } + @Override public void requestAttributeOwnershipAssumption( ObjectInstanceHandle objectInstanceHandle, AttributeHandleSet attributeHandles, byte[] tag) @@ -4103,6 +4164,7 @@ objectInstanceHandle, attributeHandles, tag); } + @Override public void requestDivestitureConfirmation( ObjectInstanceHandle objectInstanceHandle, AttributeHandleSet attributeHandles) @@ -4113,6 +4175,7 @@ objectInstanceHandle, attributeHandles); } + @Override public void attributeOwnershipAcquisitionNotification( ObjectInstanceHandle objectInstanceHandle, AttributeHandleSet attributeHandles, byte[] tag) @@ -4124,6 +4187,7 @@ objectInstanceHandle, attributeHandles, tag, federateAmbassador); } + @Override public void attributeOwnershipUnavailable( ObjectInstanceHandle objectInstanceHandle, AttributeHandleSet attributeHandles) @@ -4135,6 +4199,7 @@ objectInstanceHandle, attributeHandles); } + @Override public void requestAttributeOwnershipRelease( ObjectInstanceHandle objectInstanceHandle, AttributeHandleSet attributeHandles, byte[] tag) @@ -4145,6 +4210,7 @@ objectInstanceHandle, attributeHandles, tag); } + @Override public void confirmAttributeOwnershipAcquisitionCancellation( ObjectInstanceHandle objectInstanceHandle, AttributeHandleSet attributeHandles) @@ -4156,6 +4222,7 @@ objectInstanceHandle, attributeHandles); } + @Override public void informAttributeOwnership( ObjectInstanceHandle objectInstanceHandle, AttributeHandle attributeHandle, FederateHandle federateHandle) @@ -4165,6 +4232,7 @@ objectInstanceHandle, attributeHandle, federateHandle); } + @Override public void attributeIsNotOwned(ObjectInstanceHandle objectInstanceHandle, AttributeHandle attributeHandle) throws ObjectInstanceNotKnown, AttributeNotRecognized, FederateInternalError @@ -4173,6 +4241,7 @@ objectInstanceHandle, attributeHandle); } + @Override public void attributeIsOwnedByRTI(ObjectInstanceHandle objectInstanceHandle, AttributeHandle attributeHandle) throws ObjectInstanceNotKnown, AttributeNotRecognized, FederateInternalError @@ -4181,6 +4250,7 @@ objectInstanceHandle, attributeHandle); } + @Override public void timeRegulationEnabled(LogicalTime time) throws InvalidLogicalTime, NoRequestToEnableTimeRegulationWasPending, FederateInternalError @@ -4188,6 +4258,7 @@ timeManager.timeRegulationEnabled(time, federateAmbassador); } + @Override public void timeConstrainedEnabled(LogicalTime time) throws InvalidLogicalTime, NoRequestToEnableTimeConstrainedWasPending, FederateInternalError @@ -4195,6 +4266,7 @@ timeManager.timeConstrainedEnabled(time, federateAmbassador); } + @Override public void timeAdvanceGrant(LogicalTime time) throws InvalidLogicalTime, JoinedFederateIsNotInTimeAdvancingState, FederateInternalError @@ -4202,6 +4274,7 @@ timeManager.timeAdvanceGrant(time, federateAmbassador); } + @Override public void requestRetraction(MessageRetractionHandle messageRetractionHandle) throws FederateInternalError { Modified: trunk/rti/src/java/net/sf/ohla/rti1516/federate/time/TimeManager.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federate/time/TimeManager.java 2006-11-15 01:32:16 UTC (rev 27) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federate/time/TimeManager.java 2006-11-15 23:17:58 UTC (rev 28) @@ -548,6 +548,8 @@ { federateTime = time; + timeRegulatingState = TimeRegulatingState.TIME_REGULATING; + federateAmbassador.timeRegulationEnabled(time); } catch (Throwable t) @@ -569,6 +571,8 @@ { federateTime = time; + timeConstrainedState = TimeConstrainedState.TIME_CONSTRAINED; + federateAmbassador.timeConstrainedEnabled(time); } catch (Throwable t) Modified: trunk/testsuite/src/java/net/sf/ohla/rti1516/TimeManagementTestNG.java =================================================================== --- trunk/testsuite/src/java/net/sf/ohla/rti1516/TimeManagementTestNG.java 2006-11-15 01:32:16 UTC (rev 27) +++ trunk/testsuite/src/java/net/sf/ohla/rti1516/TimeManagementTestNG.java 2006-11-15 23:17:58 UTC (rev 28) @@ -16,14 +16,250 @@ package net.sf.ohla.rti1516; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; +import java.util.List; +import java.util.ArrayList; +import org.testng.annotations.AfterClass; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.Test; + +import hla.rti1516.ResignAction; +import hla.rti1516.LogicalTimeInterval; +import hla.rti1516.RTIambassador; import hla.rti1516.LogicalTime; -import hla.rti1516.IllegalTimeArithmetic; +import hla.rti1516.InvalidLogicalTime; +import hla.rti1516.NoRequestToEnableTimeRegulationWasPending; +import hla.rti1516.FederateInternalError; +import hla.rti1516.NoRequestToEnableTimeConstrainedWasPending; +import hla.rti1516.TimeRegulationAlreadyEnabled; +import hla.rti1516.TimeConstrainedAlreadyEnabled; +import hla.rti1516.TimeRegulationIsNotEnabled; +import hla.rti1516.TimeConstrainedIsNotEnabled; +import hla.rti1516.RequestForTimeConstrainedPending; +import hla.rti1516.RequestForTimeRegulationPending; +import hla.rti1516.InvalidLookahead; +import hla.rti1516.jlc.NullFederateAmbassador; public class TimeManagementTestNG + extends BaseTestNG { + protected List<TestFederateAmbassador> federateAmbassadors = + new ArrayList<TestFederateAmbassador>(3); + + protected LogicalTimeInterval lookahead1 = new Integer64TimeInterval(1); + protected LogicalTimeInterval lookahead2 = new Integer64TimeInterval(2); + + public TimeManagementTestNG() + { + super(2); + } + + @BeforeClass + public void setup() + throws Exception + { + rtiAmbassadors.get(0).createFederationExecution(FEDERATION_NAME, fdd); + + federateAmbassadors.add(new TestFederateAmbassador(rtiAmbassadors.get(0))); + federateAmbassadors.add(new TestFederateAmbassador(rtiAmbassadors.get(1))); + + rtiAmbassadors.get(0).joinFederationExecution( + FEDERATE_TYPE, FEDERATION_NAME, federateAmbassadors.get(0), + mobileFederateServices); + rtiAmbassadors.get(1).joinFederationExecution( + FEDERATE_TYPE + "2", FEDERATION_NAME, federateAmbassadors.get(1), + mobileFederateServices); + } + + @AfterClass + public void teardown() + throws Exception + { + rtiAmbassadors.get(0).resignFederationExecution(ResignAction.NO_ACTION); + rtiAmbassadors.get(1).resignFederationExecution(ResignAction.NO_ACTION); + + rtiAmbassadors.get(0).destroyFederationExecution(FEDERATION_NAME); + } + + @Test + public void testEnableTimeRegulation() + throws Exception + { + rtiAmbassadors.get(0).enableTimeRegulation(lookahead1); + federateAmbassadors.get(0).checkTimeRegulationEnabled(); + + rtiAmbassadors.get(1).enableTimeRegulation(lookahead2); + federateAmbassadors.get(1).checkTimeRegulationEnabled(); + } + + @Test(dependsOnMethods = {"testEnableTimeRegulation"}, + expectedExceptions = {TimeRegulationAlreadyEnabled.class}) + public void testEnableTimeRegulationAgain() + throws Exception + { + rtiAmbassadors.get(0).enableTimeRegulation(lookahead1); + } + + @Test(dependsOnMethods = {"testEnableTimeRegulationAgain"}) + public void testQueryLookahead() + throws Exception + { + assert lookahead1.equals(rtiAmbassadors.get(0).queryLookahead()); + } + + @Test(dependsOnMethods = {"testQueryLookahead"}) + public void testModifyLookahead() + throws Exception + { + rtiAmbassadors.get(0).modifyLookahead(lookahead2); + assert lookahead2.equals(rtiAmbassadors.get(0).queryLookahead()); + } + + @Test(dependsOnMethods = {"testModifyLookahead"}) + public void testDisableTimeRegulation() + throws Exception + { + rtiAmbassadors.get(0).disableTimeRegulation(); + } + + @Test(dependsOnMethods = {"testDisableTimeRegulation"}, + expectedExceptions = {TimeRegulationIsNotEnabled.class}) + public void testDisableTimeRegulationAgain() + throws Exception + { + rtiAmbassadors.get(0).disableTimeRegulation(); + } + + @Test(dependsOnMethods = {"testDisableTimeRegulationAgain"}, + expectedExceptions = {RequestForTimeRegulationPending.class}) + public void testEnableTimeRegulationWhileEnableTimeRegulationPending() + throws Exception + { + rtiAmbassadors.get(0).enableTimeRegulation(lookahead1); + + try + { + rtiAmbassadors.get(0).enableTimeRegulation(lookahead1); + } + finally + { + federateAmbassadors.get(0).checkTimeRegulationEnabled(); + rtiAmbassadors.get(0).disableTimeRegulation(); + } + } + + @Test(dependsOnMethods = {"testEnableTimeRegulationWhileEnableTimeRegulationPending"}, + expectedExceptions = {InvalidLookahead.class}) + public void testEnableTimeRegulationOfInvalidLookahead() + throws Exception + { + rtiAmbassadors.get(0).enableTimeRegulation(null); + } + + @Test + public void testEnableTimeConstrained() + throws Exception + { + rtiAmbassadors.get(0).enableTimeConstrained(); + federateAmbassadors.get(0).checkTimeConstrainedEnabled(); + + rtiAmbassadors.get(1).enableTimeConstrained(); + federateAmbassadors.get(1).checkTimeConstrainedEnabled(); + } + + @Test(dependsOnMethods = {"testEnableTimeConstrained"}, + expectedExceptions = {TimeConstrainedAlreadyEnabled.class}) + public void testEnableTimeConstrainedAgain() + throws Exception + { + rtiAmbassadors.get(0).enableTimeConstrained(); + } + + @Test(dependsOnMethods = {"testEnableTimeConstrainedAgain"}) + public void testDisableTimeConstrained() + throws Exception + { + rtiAmbassadors.get(0).disableTimeConstrained(); + } + + @Test(dependsOnMethods = {"testDisableTimeConstrained"}, + expectedExceptions = {TimeConstrainedIsNotEnabled.class}) + public void testDisableTimeConstrainedAgain() + throws Exception + { + rtiAmbassadors.get(0).disableTimeConstrained(); + } + + @Test(dependsOnMethods = {"testDisableTimeConstrainedAgain"}, + expectedExceptions = {RequestForTimeConstrainedPending.class}) + public void testEnableTimeConstrainedWhileEnableTimeConstrainedPending() + throws Exception + { + rtiAmbassadors.get(0).enableTimeConstrained(); + + try + { + rtiAmbassadors.get(0).enableTimeConstrained(); + } + finally + { + federateAmbassadors.get(0).checkTimeConstrainedEnabled(); + rtiAmbassadors.get(0).disableTimeConstrained(); + } + } + + protected static class TestFederateAmbassador + extends NullFederateAmbassador + { + protected RTIambassador rtiAmbassador; + + protected LogicalTime timeRegulationEnabledTime; + protected LogicalTime timeConstrainedEnabledTime; + + public TestFederateAmbassador(RTIambassador rtiAmbassador) + { + this.rtiAmbassador = rtiAmbassador; + } + + public void checkTimeRegulationEnabled() + throws Exception + { + timeRegulationEnabledTime = null; + for (int i = 0; i < 5 && timeRegulationEnabledTime == null; i++) + { + rtiAmbassador.evokeMultipleCallbacks(.1, 1.0); + } + assert timeRegulationEnabledTime != null; + } + + public void checkTimeConstrainedEnabled() + throws Exception + { + timeConstrainedEnabledTime = null; + for (int i = 0; i < 5 && timeConstrainedEnabledTime == null; i++) + { + rtiAmbassador.evokeMultipleCallbacks(.1, 1.0); + } + assert timeConstrainedEnabledTime != null; + } + + @Override + public void timeRegulationEnabled(LogicalTime time) + throws InvalidLogicalTime, NoRequestToEnableTimeRegulationWasPending, + FederateInternalError + { + timeRegulationEnabledTime = time; + } + + @Override + public void timeConstrainedEnabled(LogicalTime time) + throws InvalidLogicalTime, NoRequestToEnableTimeConstrainedWasPending, + FederateInternalError + { + timeConstrainedEnabledTime = time; + } + } + // public void test() // { // TimeClient tc = new TimeClient("A", new Integer64TimeInterval(3000), false); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mne...@us...> - 2006-11-16 04:41:53
|
Revision: 34 http://svn.sourceforge.net/ohla/?rev=34&view=rev Author: mnewcomb Date: 2006-11-15 20:41:53 -0800 (Wed, 15 Nov 2006) Log Message: ----------- more time management support Modified Paths: -------------- trunk/rti/src/java/net/sf/ohla/rti/OHLARTIambassador.java trunk/rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java trunk/testsuite/src/java/net/sf/ohla/rti1516/DataDistributionManagementTestNG.java trunk/testsuite/src/java/net/sf/ohla/rti1516/DeclarationManagementTestNG.java trunk/testsuite/src/java/net/sf/ohla/rti1516/FederationManagementTestNG.java trunk/testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java trunk/testsuite/src/java/net/sf/ohla/rti1516/OwnershipManagementTestNG.java trunk/testsuite/src/java/net/sf/ohla/rti1516/SupportServicesTestNG.java Added Paths: ----------- trunk/rti/src/java/net/sf/ohla/rti/Integer64Time.java trunk/rti/src/java/net/sf/ohla/rti/Integer64TimeFactory.java trunk/rti/src/java/net/sf/ohla/rti/Integer64TimeInterval.java trunk/rti/src/java/net/sf/ohla/rti/Integer64TimeIntervalFactory.java Added: trunk/rti/src/java/net/sf/ohla/rti/Integer64Time.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti/Integer64Time.java (rev 0) +++ trunk/rti/src/java/net/sf/ohla/rti/Integer64Time.java 2006-11-16 04:41:53 UTC (rev 34) @@ -0,0 +1,180 @@ +/* + * Copyright (c) 2006, Michael Newcomb + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.sf.ohla.rti; + +import java.nio.BufferUnderflowException; +import java.nio.ByteBuffer; + +import hla.rti.CouldNotDecode; +import hla.rti.IllegalTimeArithmetic; +import hla.rti.LogicalTime; +import hla.rti.LogicalTimeInterval; + +public class Integer64Time + implements LogicalTime +{ + private static final byte ENCODED_LENGTH = Long.SIZE / 8; + + public static final Integer64Time INITIAL = new Integer64Time(0); + public static final Integer64Time FINAL = new Integer64Time(Long.MAX_VALUE); + + public long time; + + public Integer64Time(long time) + { + this.time = time; + } + + public Integer64Time(byte[] buffer, int offset) + throws CouldNotDecode + { + try + { + time = ByteBuffer.wrap(buffer, offset, ENCODED_LENGTH).getLong(); + } + catch (BufferUnderflowException bue) + { + throw new CouldNotDecode(bue); + } + } + + public void decreaseBy(LogicalTimeInterval lti) + throws IllegalTimeArithmetic + { + if (lti instanceof Integer64TimeInterval) + { + time -= ((Integer64TimeInterval) lti).interval; + } + else + { + throw new IllegalTimeArithmetic( + String.format("incompatible time: %s", lti)); + } + } + + public void increaseBy(LogicalTimeInterval lti) + throws IllegalTimeArithmetic + { + if (lti instanceof Integer64TimeInterval) + { + time += ((Integer64TimeInterval) lti).interval; + } + else + { + throw new IllegalTimeArithmetic( + String.format("incompatible time: %s", lti)); + } + } + + public boolean isInitial() + { + return time == INITIAL.time; + } + + public boolean isFinal() + { + return time == FINAL.time; + } + + public boolean isEqualTo(LogicalTime rhs) + { + return equals(rhs); + } + + public boolean isGreaterThan(LogicalTime rhs) + { + return compareTo(rhs) > 0; + } + + public boolean isGreaterThanOrEqualTo(LogicalTime rhs) + { + return compareTo(rhs) >= 0; + } + + public boolean isLessThan(LogicalTime rhs) + { + return compareTo(rhs) < 0; + } + + public boolean isLessThanOrEqualTo(LogicalTime rhs) + { + return compareTo(rhs) <= 0; + } + + public void setFinal() + { + time = FINAL.time; + } + + public void setInitial() + { + time = INITIAL.time; + } + + public void setTo(LogicalTime lt) + { + assert lt instanceof Integer64Time : String.format("%s", lt); + + time = ((Integer64Time) lt).time; + } + + public LogicalTimeInterval subtract(LogicalTime lt) + { + assert lt instanceof Integer64Time : String.format("%s", lt); + + return new Integer64TimeInterval(time - ((Integer64Time) lt).time); + } + + public int encodedLength() + { + return ENCODED_LENGTH; + } + + public void encode(byte[] buffer, int offset) + { + ByteBuffer.wrap(buffer, offset, ENCODED_LENGTH).putLong(time); + } + + public int compareTo(Object rhs) + { + return compareTo((Integer64Time) rhs); + } + + public int compareTo(Integer64Time rhs) + { + long diff = time - rhs.time; + return diff > 0l ? 1 : diff < 0l ? -1 : 0; + } + + @Override + public boolean equals(Object rhs) + { + return rhs instanceof Integer64Time && time == ((Integer64Time) rhs).time; + } + + @Override + public int hashCode() + { + return (int) time; + } + + @Override + public String toString() + { + return Long.toString(time); + } +} Added: trunk/rti/src/java/net/sf/ohla/rti/Integer64TimeFactory.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti/Integer64TimeFactory.java (rev 0) +++ trunk/rti/src/java/net/sf/ohla/rti/Integer64TimeFactory.java 2006-11-16 04:41:53 UTC (rev 34) @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2006, Michael Newcomb + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.sf.ohla.rti; + +import hla.rti.CouldNotDecode; +import hla.rti.LogicalTime; +import hla.rti.LogicalTimeFactory; + +public class Integer64TimeFactory + implements LogicalTimeFactory +{ + public LogicalTime decode(byte[] buffer, int offset) + throws CouldNotDecode + { + return new Integer64Time(buffer, offset); + } + + public LogicalTime makeInitial() + { + return new Integer64Time(Integer64Time.INITIAL.time); + } +} Added: trunk/rti/src/java/net/sf/ohla/rti/Integer64TimeInterval.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti/Integer64TimeInterval.java (rev 0) +++ trunk/rti/src/java/net/sf/ohla/rti/Integer64TimeInterval.java 2006-11-16 04:41:53 UTC (rev 34) @@ -0,0 +1,146 @@ +/* + * Copyright (c) 2006, Michael Newcomb + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.sf.ohla.rti; + +import java.nio.BufferUnderflowException; +import java.nio.ByteBuffer; + +import hla.rti.CouldNotDecode; +import hla.rti.LogicalTimeInterval; + +public class Integer64TimeInterval + implements LogicalTimeInterval +{ + private static final byte ENCODED_LENGTH = Long.SIZE / 8; + + public static final Integer64TimeInterval ZERO = + new Integer64TimeInterval(0); + public static final Integer64TimeInterval EPSILON = + new Integer64TimeInterval(1); + + public long interval; + + public Integer64TimeInterval(long interval) + { + this.interval = interval; + } + + public Integer64TimeInterval(byte[] buffer, int offset) + throws CouldNotDecode + { + try + { + interval = ByteBuffer.wrap(buffer, offset, ENCODED_LENGTH).getLong(); + } + catch (BufferUnderflowException bue) + { + throw new CouldNotDecode(bue); + } + } + + public int encodedLength() + { + return ENCODED_LENGTH; + } + + public boolean isEpsilon() + { + return interval == EPSILON.interval; + } + + public boolean isZero() + { + return interval == ZERO.interval; + } + + public boolean isEqualTo(LogicalTimeInterval rhs) + { + return equals(rhs); + } + + public boolean isGreaterThan(LogicalTimeInterval rhs) + { + return compareTo(rhs) > 0; + } + + public boolean isGreaterThanOrEqualTo(LogicalTimeInterval rhs) + { + return compareTo(rhs) >= 0; + } + + public boolean isLessThan(LogicalTimeInterval rhs) + { + return compareTo(rhs) < 0; + } + + public boolean isLessThanOrEqualTo(LogicalTimeInterval rhs) + { + return compareTo(rhs) <= 0; + } + + public void setEpsilon() + { + interval = EPSILON.interval; + } + + public void setZero() + { + interval = ZERO.interval; + } + + public void setTo(LogicalTimeInterval lti) + { + assert lti instanceof Integer64Time : String.format("%s", lti); + + interval = ((Integer64TimeInterval) lti).interval; + } + + public void encode(byte[] buffer, int offset) + { + ByteBuffer.wrap(buffer, offset, ENCODED_LENGTH).putLong(interval); + } + + public int compareTo(Object rhs) + { + return compareTo((Integer64TimeInterval) rhs); + } + + public int compareTo(Integer64TimeInterval rhs) + { + long diff = interval - rhs.interval; + return diff > 0l ? 1 : diff < 0l ? -1 : 0; + } + + @Override + public boolean equals(Object rhs) + { + return rhs instanceof Integer64TimeInterval && + interval == ((Integer64TimeInterval) rhs).interval; + } + + @Override + public int hashCode() + { + return (int) interval; + } + + @Override + public String toString() + { + return Long.toString(interval); + } +} Added: trunk/rti/src/java/net/sf/ohla/rti/Integer64TimeIntervalFactory.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti/Integer64TimeIntervalFactory.java (rev 0) +++ trunk/rti/src/java/net/sf/ohla/rti/Integer64TimeIntervalFactory.java 2006-11-16 04:41:53 UTC (rev 34) @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2006, Michael Newcomb + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.sf.ohla.rti; + +import hla.rti.CouldNotDecode; +import hla.rti.LogicalTimeInterval; +import hla.rti.LogicalTimeIntervalFactory; + +public class Integer64TimeIntervalFactory + implements LogicalTimeIntervalFactory +{ + public LogicalTimeInterval decode(byte[] buffer, int offset) + throws CouldNotDecode + { + return new Integer64TimeInterval(buffer, offset); + } + + public LogicalTimeInterval makeZero() + { + return new Integer64TimeInterval(Integer64TimeInterval.ZERO.interval); + } +} Modified: trunk/rti/src/java/net/sf/ohla/rti/OHLARTIambassador.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti/OHLARTIambassador.java 2006-11-16 04:01:02 UTC (rev 33) +++ trunk/rti/src/java/net/sf/ohla/rti/OHLARTIambassador.java 2006-11-16 04:41:53 UTC (rev 34) @@ -178,6 +178,16 @@ private static final Logger log = LoggerFactory.getLogger(OHLARTIambassador.class); + public static final String OHLA_FEDERATE_IEEE_1516_LOGICAL_TIME_FACTORY_PROPERTY = + "ohla.federate.%s.ieee1516.logicalTimeFactory"; + public static final String DEFAULT_OHLA_FEDERATE_IEEE_1516_LOGICAL_TIME_FACTORY_PROPERTY = + "ohla.federate.ieee1516.logicalTimeFactory"; + + public static final String OHLA_FEDERATE_IEEE_1516_LOGICAL_TIME_INTERVAL_FACTORY_PROPERTY = + "ohla.federate.%s.ieee1516.logicalTimeIntervalFactory"; + public static final String DEFAULT_OHLA_FEDERATE_IEEE_1516_LOGICAL_TIME_INTERVAL_FACTORY_PROPERTY = + "ohla.federate.ieee1516.logicalTimeIntervalFactory"; + protected net.sf.ohla.rti1516.OHLARTIambassador rtiAmbassador = new net.sf.ohla.rti1516.OHLARTIambassador(); @@ -301,11 +311,16 @@ "MobileFederateServices._intervalFactory must be supplied"); } + logicalTimeFactory = mobileFederateServices._timeFactory; + logicalTimeIntervalFactory = mobileFederateServices._intervalFactory; + + ieee1516LogicalTimeFactory = + getIEEE1516LogicalTimeFactory(federateType); + ieee1516LogicalTimeIntervalFactory = + getIEEE1516LogicalTimeIntervalFactory(federateType); + try { - logicalTimeFactory = mobileFederateServices._timeFactory; - logicalTimeIntervalFactory = mobileFederateServices._intervalFactory; - FederateHandle federateHandle = rtiAmbassador.joinFederationExecution( federateType, federationName, new FederateAmbassadorBridge(this, federateAmbassador), @@ -4856,4 +4871,108 @@ return ResignAction.values()[resignAction]; } + + protected hla.rti1516.LogicalTimeFactory getIEEE1516LogicalTimeFactory( + String federateType) + throws RTIinternalError + { + String logicalTimeFactoryClassNameProperty = String.format( + OHLA_FEDERATE_IEEE_1516_LOGICAL_TIME_FACTORY_PROPERTY, federateType); + String logicalTimeFactoryClassName = + System.getProperty(String.format( + OHLA_FEDERATE_IEEE_1516_LOGICAL_TIME_FACTORY_PROPERTY, federateType)); + if (logicalTimeFactoryClassName == null) + { + logicalTimeFactoryClassName = System.getProperty( + DEFAULT_OHLA_FEDERATE_IEEE_1516_LOGICAL_TIME_FACTORY_PROPERTY); + } + + if (logicalTimeFactoryClassName == null) + { + throw new RTIinternalError(String.format( + "must supply either %s or %s properties", + logicalTimeFactoryClassNameProperty, + DEFAULT_OHLA_FEDERATE_IEEE_1516_LOGICAL_TIME_FACTORY_PROPERTY)); + } + + ClassLoader classLoader = Thread.currentThread().getContextClassLoader(); + try + { + return (hla.rti1516.LogicalTimeFactory) classLoader.loadClass( + logicalTimeFactoryClassName).newInstance(); + } + catch (ClassCastException cce) + { + throw new RTIinternalError(String.format( + "invalid class: '%s' (not an %s)", logicalTimeFactoryClassName, + hla.rti1516.LogicalTimeFactory.class), cce); + } + catch (ClassNotFoundException cnfe) + { + throw new RTIinternalError(String.format( + "class not found: %s", logicalTimeFactoryClassName), cnfe); + } + catch (InstantiationException ie) + { + throw new RTIinternalError(String.format( + "unable to instantiate: %s", logicalTimeFactoryClassName), ie); + } + catch (IllegalAccessException iae) + { + throw new RTIinternalError(String.format( + "unable to access: %s", logicalTimeFactoryClassName), iae); + } + } + + protected hla.rti1516.LogicalTimeIntervalFactory getIEEE1516LogicalTimeIntervalFactory( + String federateType) + throws RTIinternalError + { + String logicalTimeIntervalFactoryClassNameProperty = String.format( + OHLA_FEDERATE_IEEE_1516_LOGICAL_TIME_INTERVAL_FACTORY_PROPERTY, + federateType); + String logicalTimeIntervalFactoryClassName = + System.getProperty(logicalTimeIntervalFactoryClassNameProperty); + if (logicalTimeIntervalFactoryClassName == null) + { + logicalTimeIntervalFactoryClassName = System.getProperty( + DEFAULT_OHLA_FEDERATE_IEEE_1516_LOGICAL_TIME_INTERVAL_FACTORY_PROPERTY); + } + + if (logicalTimeIntervalFactoryClassName == null) + { + throw new RTIinternalError(String.format( + "must supply either %s or %s properties", + logicalTimeIntervalFactoryClassNameProperty, + DEFAULT_OHLA_FEDERATE_IEEE_1516_LOGICAL_TIME_INTERVAL_FACTORY_PROPERTY)); + } + + ClassLoader classLoader = Thread.currentThread().getContextClassLoader(); + try + { + return (hla.rti1516.LogicalTimeIntervalFactory) classLoader.loadClass( + logicalTimeIntervalFactoryClassName).newInstance(); + } + catch (ClassCastException cce) + { + throw new RTIinternalError(String.format( + "invalid class: '%s' (not an %s)", logicalTimeIntervalFactoryClassName, + hla.rti1516.LogicalTimeFactory.class), cce); + } + catch (ClassNotFoundException cnfe) + { + throw new RTIinternalError(String.format( + "class not found: %s", logicalTimeIntervalFactoryClassName), cnfe); + } + catch (InstantiationException ie) + { + throw new RTIinternalError(String.format( + "unable to instantiate: %s", logicalTimeIntervalFactoryClassName), ie); + } + catch (IllegalAccessException iae) + { + throw new RTIinternalError(String.format( + "unable to access: %s", logicalTimeIntervalFactoryClassName), iae); + } + } } Modified: trunk/rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java 2006-11-16 04:01:02 UTC (rev 33) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java 2006-11-16 04:41:53 UTC (rev 34) @@ -1479,18 +1479,13 @@ federatesLock.lock(); try { - if (joinFederationExecution.getMobileFederateServices() == null) + if (timeKeeper != null) { - log.warn("federate did not specify MobileFederateServices: {}", - federateHandle); - } - else if (timeKeeper != null) - { // TODO: ensure each federate has the same mobile federate services } else { - // use the first non-null mobile federate services + // use the first federate's mobile services // timeKeeper = new TimeKeeper( this, joinFederationExecution.getMobileFederateServices()); Modified: trunk/testsuite/src/java/net/sf/ohla/rti1516/DataDistributionManagementTestNG.java =================================================================== --- trunk/testsuite/src/java/net/sf/ohla/rti1516/DataDistributionManagementTestNG.java 2006-11-16 04:01:02 UTC (rev 33) +++ trunk/testsuite/src/java/net/sf/ohla/rti1516/DataDistributionManagementTestNG.java 2006-11-16 04:41:53 UTC (rev 34) @@ -57,9 +57,11 @@ rtiAmbassadors.get(0).createFederationExecution(FEDERATION_NAME, fdd); rtiAmbassadors.get(0).joinFederationExecution( - FEDERATE_TYPE, FEDERATION_NAME, new NullFederateAmbassador(), null); + FEDERATE_TYPE, FEDERATION_NAME, new NullFederateAmbassador(), + mobileFederateServices); rtiAmbassadors.get(1).joinFederationExecution( - FEDERATE_TYPE + "2", FEDERATION_NAME, new NullFederateAmbassador(), null); + FEDERATE_TYPE + "2", FEDERATION_NAME, new NullFederateAmbassador(), + mobileFederateServices); dimensionHandle1 = rtiAmbassadors.get(0).getDimensionHandle(DIMENSION1); dimensionHandle2 = rtiAmbassadors.get(0).getDimensionHandle(DIMENSION2); Modified: trunk/testsuite/src/java/net/sf/ohla/rti1516/DeclarationManagementTestNG.java =================================================================== --- trunk/testsuite/src/java/net/sf/ohla/rti1516/DeclarationManagementTestNG.java 2006-11-16 04:01:02 UTC (rev 33) +++ trunk/testsuite/src/java/net/sf/ohla/rti1516/DeclarationManagementTestNG.java 2006-11-16 04:41:53 UTC (rev 34) @@ -43,7 +43,8 @@ { rtiAmbassadors.get(0).createFederationExecution(FEDERATION_NAME, fdd); rtiAmbassadors.get(0).joinFederationExecution( - FEDERATE_TYPE, FEDERATION_NAME, new NullFederateAmbassador(), null); + FEDERATE_TYPE, FEDERATION_NAME, new NullFederateAmbassador(), + mobileFederateServices); testObjectClassHandle = rtiAmbassadors.get(0).getObjectClassHandle(TEST_OBJECT); Modified: trunk/testsuite/src/java/net/sf/ohla/rti1516/FederationManagementTestNG.java =================================================================== --- trunk/testsuite/src/java/net/sf/ohla/rti1516/FederationManagementTestNG.java 2006-11-16 04:01:02 UTC (rev 33) +++ trunk/testsuite/src/java/net/sf/ohla/rti1516/FederationManagementTestNG.java 2006-11-16 04:41:53 UTC (rev 34) @@ -39,6 +39,8 @@ import hla.rti1516.SynchronizationPointFailureReason; import hla.rti1516.SynchronizationPointLabelNotAnnounced; import hla.rti1516.ResignAction; +import hla.rti1516.RTIinternalError; +import hla.rti1516.MobileFederateServices; import hla.rti1516.jlc.NullFederateAmbassador; @Test(groups = {"Federation Managmenet"}) @@ -142,6 +144,41 @@ rtiAmbassadors.get(2).resignFederationExecution(ResignAction.NO_ACTION); } + @Test(dependsOnMethods = {"testResignFederationExecution"}, + expectedExceptions = {RTIinternalError.class}) + public void testJoinFederationWithNullMobileFederateServices() + throws Exception + { + rtiAmbassadors.get(0).joinFederationExecution( + FEDERATE_TYPE, FEDERATION_NAME, new NullFederateAmbassador(), null); + } + + @Test(dependsOnMethods = {"testResignFederationExecution"}, + expectedExceptions = {RTIinternalError.class}) + public void testJoinFederationWithNullTimeFactory() + throws Exception + { + MobileFederateServices mobileFederateServices = + new MobileFederateServices(null, null); + + rtiAmbassadors.get(0).joinFederationExecution( + FEDERATE_TYPE, FEDERATION_NAME, new NullFederateAmbassador(), + mobileFederateServices); + } + + @Test(dependsOnMethods = {"testResignFederationExecution"}, + expectedExceptions = {RTIinternalError.class}) + public void testJoinFederationWithNullIntervalFactory() + throws Exception + { + MobileFederateServices mobileFederateServices = + new MobileFederateServices(new Integer64TimeFactory(), null); + + rtiAmbassadors.get(0).joinFederationExecution( + FEDERATE_TYPE, FEDERATION_NAME, new NullFederateAmbassador(), + mobileFederateServices); + } + @Test(expectedExceptions = {FederationExecutionDoesNotExist.class}) public void testJoinFederationExecutionThatDoesNotExist() throws Exception Modified: trunk/testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java =================================================================== --- trunk/testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java 2006-11-16 04:01:02 UTC (rev 33) +++ trunk/testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java 2006-11-16 04:41:53 UTC (rev 34) @@ -98,7 +98,8 @@ federateAmbassadors.add(new TestFederateAmbassador(rtiAmbassadors.get(2))); rtiAmbassadors.get(0).joinFederationExecution( - FEDERATE_TYPE, FEDERATION_NAME, federateAmbassadors.get(0), null); + FEDERATE_TYPE, FEDERATION_NAME, federateAmbassadors.get(0), + mobileFederateServices); testObjectClassHandle = rtiAmbassadors.get(0).getObjectClassHandle(TEST_OBJECT); @@ -279,7 +280,8 @@ throws Exception { rtiAmbassadors.get(1).joinFederationExecution( - FEDERATE_TYPE + "2", FEDERATION_NAME, federateAmbassadors.get(1), null); + FEDERATE_TYPE + "2", FEDERATION_NAME, federateAmbassadors.get(1), + mobileFederateServices); rtiAmbassadors.get(1).publishObjectClassAttributes( testObjectClassHandle2, testObjectAttributeHandles2); @@ -301,7 +303,8 @@ throws Exception { rtiAmbassadors.get(2).joinFederationExecution( - FEDERATE_TYPE + "3", FEDERATION_NAME, federateAmbassadors.get(2), null); + FEDERATE_TYPE + "3", FEDERATION_NAME, federateAmbassadors.get(2), + mobileFederateServices); rtiAmbassadors.get(2).subscribeObjectClassAttributes( testObjectClassHandle, testObjectAttributeHandles); Modified: trunk/testsuite/src/java/net/sf/ohla/rti1516/OwnershipManagementTestNG.java =================================================================== --- trunk/testsuite/src/java/net/sf/ohla/rti1516/OwnershipManagementTestNG.java 2006-11-16 04:01:02 UTC (rev 33) +++ trunk/testsuite/src/java/net/sf/ohla/rti1516/OwnershipManagementTestNG.java 2006-11-16 04:41:53 UTC (rev 34) @@ -78,9 +78,11 @@ federateAmbassadors.add(new TestFederateAmbassador(rtiAmbassadors.get(1))); federateHandle1 = rtiAmbassadors.get(0).joinFederationExecution( - FEDERATE_TYPE, FEDERATION_NAME, federateAmbassadors.get(0), null); + FEDERATE_TYPE, FEDERATION_NAME, federateAmbassadors.get(0), + mobileFederateServices); federateHandle2 = rtiAmbassadors.get(1).joinFederationExecution( - FEDERATE_TYPE + "2", FEDERATION_NAME, federateAmbassadors.get(1), null); + FEDERATE_TYPE + "2", FEDERATION_NAME, federateAmbassadors.get(1), + mobileFederateServices); federateAmbassadors.get(0).setFederateHandle(federateHandle1); federateAmbassadors.get(1).setFederateHandle(federateHandle2); Modified: trunk/testsuite/src/java/net/sf/ohla/rti1516/SupportServicesTestNG.java =================================================================== --- trunk/testsuite/src/java/net/sf/ohla/rti1516/SupportServicesTestNG.java 2006-11-16 04:01:02 UTC (rev 33) +++ trunk/testsuite/src/java/net/sf/ohla/rti1516/SupportServicesTestNG.java 2006-11-16 04:41:53 UTC (rev 34) @@ -50,7 +50,8 @@ { rtiAmbassadors.get(0).createFederationExecution(FEDERATION_NAME, fdd); rtiAmbassadors.get(0).joinFederationExecution( - FEDERATE_TYPE, FEDERATION_NAME, new NullFederateAmbassador(), null); + FEDERATE_TYPE, FEDERATION_NAME, new NullFederateAmbassador(), + mobileFederateServices); } @AfterClass This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mne...@us...> - 2006-12-10 03:07:30
|
Revision: 75 http://svn.sourceforge.net/ohla/?rev=75&view=rev Author: mnewcomb Date: 2006-12-09 19:07:31 -0800 (Sat, 09 Dec 2006) Log Message: ----------- renamed federateName to federationExecutionName Modified Paths: -------------- trunk/hla-1.3/src/java/hla/rti/RTIambassador.java trunk/ieee-1516/src/java/hla/rti1516/RTIambassador.java Modified: trunk/hla-1.3/src/java/hla/rti/RTIambassador.java =================================================================== --- trunk/hla-1.3/src/java/hla/rti/RTIambassador.java 2006-12-10 02:57:37 UTC (rev 74) +++ trunk/hla-1.3/src/java/hla/rti/RTIambassador.java 2006-12-10 03:07:31 UTC (rev 75) @@ -4,20 +4,20 @@ public interface RTIambassador { - void createFederationExecution(String federationName, URL fed) + void createFederationExecution(String federationExecutionName, URL fed) throws FederationExecutionAlreadyExists, CouldNotOpenFED, ErrorReadingFED, RTIinternalError; - void destroyFederationExecution(String federationName) + void destroyFederationExecution(String federationExecutionName) throws FederatesCurrentlyJoined, FederationExecutionDoesNotExist, RTIinternalError; - int joinFederationExecution(String federateType, String federationName, + int joinFederationExecution(String federateType, String federationExecutionName, FederateAmbassador federateAmbassador) throws FederateAlreadyExecutionMember, FederationExecutionDoesNotExist, SaveInProgress, RestoreInProgress, RTIinternalError; - int joinFederationExecution(String federateType, String federationName, + int joinFederationExecution(String federateType, String federationExecutionName, FederateAmbassador federateAmbassador, MobileFederateServices mobileFederateServices) throws FederateAlreadyExecutionMember, FederationExecutionDoesNotExist, Modified: trunk/ieee-1516/src/java/hla/rti1516/RTIambassador.java =================================================================== --- trunk/ieee-1516/src/java/hla/rti1516/RTIambassador.java 2006-12-10 02:57:37 UTC (rev 74) +++ trunk/ieee-1516/src/java/hla/rti1516/RTIambassador.java 2006-12-10 03:07:31 UTC (rev 75) @@ -13,7 +13,7 @@ * argument shall identify the FOM that furnishes the FDD for the federation * execution to be created. * - * @param federationName the name of the federation execution + * @param federationExecutionName the name of the federation execution * @param fdd the FOM document designator (FDD) * @throws FederationExecutionAlreadyExists thrown if the specified federation * name already exists @@ -21,7 +21,7 @@ * @throws ErrorReadingFDD thrown if the FDD could not be read * @throws RTIinternalError thrown if the RTI encountered an error */ - void createFederationExecution(String federationName, URL fdd) + void createFederationExecution(String federationExecutionName, URL fdd) throws FederationExecutionAlreadyExists, CouldNotOpenFDD, ErrorReadingFDD, RTIinternalError; @@ -32,14 +32,14 @@ * federates (all joined federates shall have resigned, either by explicit * action or via MOM activity) before this service is invoked. * - * @param federationName the name of the federation execution + * @param federationExecutionName the name of the federation execution * @throws FederatesCurrentlyJoined thrown if there are still federates joined * to the specified federation execution * @throws FederationExecutionDoesNotExist thrown if the federation execution * specified does not exist * @throws RTIinternalError thrown if the RTI encountered an error */ - void destroyFederationExecution(String federationName) + void destroyFederationExecution(String federationExecutionName) throws FederatesCurrentlyJoined, FederationExecutionDoesNotExist, RTIinternalError; @@ -52,7 +52,7 @@ * designator shall be unique for the lifetime of the federation execution. * * @param federateType - * @param federationName the name of the federation execution to join + * @param federationExecutionName the name of the federation execution to join * @param federateAmbassador * @param mobileFederateServices * @return the unique federate handle representing this federate @@ -65,7 +65,7 @@ * @throws RTIinternalError thrown if the RTI encountered an error */ FederateHandle joinFederationExecution( - String federateType, String federationName, + String federateType, String federationExecutionName, FederateAmbassador federateAmbassador, MobileFederateServices mobileFederateServices) throws FederateAlreadyExecutionMember, FederationExecutionDoesNotExist, This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mne...@us...> - 2006-12-16 03:12:41
|
Revision: 79 http://svn.sourceforge.net/ohla/?rev=79&view=rev Author: mnewcomb Date: 2006-12-15 19:12:41 -0800 (Fri, 15 Dec 2006) Log Message: ----------- reverted back to version 72 because changes were too drastic, going to take slower approach Modified Paths: -------------- trunk/hla-1.3/src/java/hla/rti/RTIambassador.java trunk/ieee-1516/src/java/hla/rti1516/RTIambassador.java trunk/rti/src/java/net/sf/ohla/rti/OHLARTIambassador.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/MessageRetractionManager.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/RegionManager.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/CallbackManager.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/filter/InterestManagementFilter.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/time/TimeManager.java Added Paths: ----------- trunk/rti/src/java/net/sf/ohla/rti1516/federate/objects/ trunk/rti/src/java/net/sf/ohla/rti1516/federate/objects/AttributeInstance.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectInstance.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectManager.java trunk/thirdparty/apache/mina/lib/backport-util-concurrent.jar trunk/thirdparty/apache/mina/lib/mina-core-1.1.0-SNAPSHOT.jar Removed Paths: ------------- trunk/rti/src/java/net/sf/ohla/rti1516/federate/objects/AttributeInstance.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectInstance.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectManager.java trunk/thirdparty/apache/mina/lib/mina-core-2.0.0-M1-SNAPSHOT.jar Modified: trunk/hla-1.3/src/java/hla/rti/RTIambassador.java =================================================================== --- trunk/hla-1.3/src/java/hla/rti/RTIambassador.java 2006-12-10 19:05:45 UTC (rev 78) +++ trunk/hla-1.3/src/java/hla/rti/RTIambassador.java 2006-12-16 03:12:41 UTC (rev 79) @@ -4,20 +4,20 @@ public interface RTIambassador { - void createFederationExecution(String federationExecutionName, URL fed) + void createFederationExecution(String federationName, URL fed) throws FederationExecutionAlreadyExists, CouldNotOpenFED, ErrorReadingFED, RTIinternalError; - void destroyFederationExecution(String federationExecutionName) + void destroyFederationExecution(String federationName) throws FederatesCurrentlyJoined, FederationExecutionDoesNotExist, RTIinternalError; - int joinFederationExecution(String federateType, String federationExecutionName, + int joinFederationExecution(String federateType, String federationName, FederateAmbassador federateAmbassador) throws FederateAlreadyExecutionMember, FederationExecutionDoesNotExist, SaveInProgress, RestoreInProgress, RTIinternalError; - int joinFederationExecution(String federateType, String federationExecutionName, + int joinFederationExecution(String federateType, String federationName, FederateAmbassador federateAmbassador, MobileFederateServices mobileFederateServices) throws FederateAlreadyExecutionMember, FederationExecutionDoesNotExist, Modified: trunk/ieee-1516/src/java/hla/rti1516/RTIambassador.java =================================================================== --- trunk/ieee-1516/src/java/hla/rti1516/RTIambassador.java 2006-12-10 19:05:45 UTC (rev 78) +++ trunk/ieee-1516/src/java/hla/rti1516/RTIambassador.java 2006-12-16 03:12:41 UTC (rev 79) @@ -13,7 +13,7 @@ * argument shall identify the FOM that furnishes the FDD for the federation * execution to be created. * - * @param federationExecutionName the name of the federation execution + * @param federationName the name of the federation execution * @param fdd the FOM document designator (FDD) * @throws FederationExecutionAlreadyExists thrown if the specified federation * name already exists @@ -21,7 +21,7 @@ * @throws ErrorReadingFDD thrown if the FDD could not be read * @throws RTIinternalError thrown if the RTI encountered an error */ - void createFederationExecution(String federationExecutionName, URL fdd) + void createFederationExecution(String federationName, URL fdd) throws FederationExecutionAlreadyExists, CouldNotOpenFDD, ErrorReadingFDD, RTIinternalError; @@ -32,14 +32,14 @@ * federates (all joined federates shall have resigned, either by explicit * action or via MOM activity) before this service is invoked. * - * @param federationExecutionName the name of the federation execution + * @param federationName the name of the federation execution * @throws FederatesCurrentlyJoined thrown if there are still federates joined * to the specified federation execution * @throws FederationExecutionDoesNotExist thrown if the federation execution * specified does not exist * @throws RTIinternalError thrown if the RTI encountered an error */ - void destroyFederationExecution(String federationExecutionName) + void destroyFederationExecution(String federationName) throws FederatesCurrentlyJoined, FederationExecutionDoesNotExist, RTIinternalError; @@ -52,7 +52,7 @@ * designator shall be unique for the lifetime of the federation execution. * * @param federateType - * @param federationExecutionName the name of the federation execution to join + * @param federationName the name of the federation execution to join * @param federateAmbassador * @param mobileFederateServices * @return the unique federate handle representing this federate @@ -65,7 +65,7 @@ * @throws RTIinternalError thrown if the RTI encountered an error */ FederateHandle joinFederationExecution( - String federateType, String federationExecutionName, + String federateType, String federationName, FederateAmbassador federateAmbassador, MobileFederateServices mobileFederateServices) throws FederateAlreadyExecutionMember, FederationExecutionDoesNotExist, @@ -185,7 +185,7 @@ throws FederateNotExecutionMember, SaveInProgress, RestoreInProgress, RTIinternalError; - void requestFederationSave(String label, LogicalTime saveTime) + void requestFederationSave(String label, LogicalTime time) throws LogicalTimeAlreadyPassed, InvalidLogicalTime, FederateUnableToUseTime, FederateNotExecutionMember, SaveInProgress, RestoreInProgress, RTIinternalError; Modified: trunk/rti/src/java/net/sf/ohla/rti/OHLARTIambassador.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti/OHLARTIambassador.java 2006-12-10 19:05:45 UTC (rev 78) +++ trunk/rti/src/java/net/sf/ohla/rti/OHLARTIambassador.java 2006-12-16 03:12:41 UTC (rev 79) @@ -36,6 +36,7 @@ import net.sf.ohla.rti1516.OHLAObjectInstanceHandle; import net.sf.ohla.rti1516.OHLAParameterHandle; import net.sf.ohla.rti1516.OHLARegionHandleSet; +import net.sf.ohla.rti1516.federate.Federate; import net.sf.ohla.rti1516.fdd.ObjectClass; import org.slf4j.Logger; @@ -214,6 +215,11 @@ protected LogicalTimeIntervalFactory logicalTimeIntervalFactory; protected hla.rti1516.LogicalTimeIntervalFactory ieee1516LogicalTimeIntervalFactory; + public Federate getJoinedFederate() + { + return rtiAmbassador.getJoinedFederate(); + } + public void createFederationExecution(String name, URL fed) throws FederationExecutionAlreadyExists, CouldNotOpenFED, ErrorReadingFED, RTIinternalError Modified: trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java 2006-12-10 19:05:45 UTC (rev 78) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java 2006-12-16 03:12:41 UTC (rev 79) @@ -63,7 +63,7 @@ import net.sf.ohla.rti1516.federate.callbacks.SynchronizationPointRegistrationFailed; import net.sf.ohla.rti1516.federate.callbacks.SynchronizationPointRegistrationSucceeded; import net.sf.ohla.rti1516.federate.filter.InterestManagementFilter; -import net.sf.ohla.rti1516.federation.objects.ObjectManager; +import net.sf.ohla.rti1516.federate.objects.ObjectManager; import net.sf.ohla.rti1516.federate.time.TimeManager; import net.sf.ohla.rti1516.filter.RequestResponseFilter; import net.sf.ohla.rti1516.messages.DefaultResponse; @@ -138,6 +138,7 @@ import hla.rti1516.DimensionHandleFactory; import hla.rti1516.DimensionHandleSet; import hla.rti1516.DimensionHandleSetFactory; +import hla.rti1516.FederateAlreadyExecutionMember; import hla.rti1516.FederateAmbassador; import hla.rti1516.FederateHandle; import hla.rti1516.FederateHandleFactory; @@ -3253,6 +3254,15 @@ return "1516.1.5"; } + protected void checkIfAlreadyExecutionMember() + throws FederateAlreadyExecutionMember + { + if (federateHandle != null) + { + throw new FederateAlreadyExecutionMember(federateHandle.toString()); + } + } + protected void startPeerAcceptor(String federateType) throws RTIinternalError { Modified: trunk/rti/src/java/net/sf/ohla/rti1516/federate/MessageRetractionManager.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federate/MessageRetractionManager.java 2006-12-10 19:05:45 UTC (rev 78) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federate/MessageRetractionManager.java 2006-12-16 03:12:41 UTC (rev 79) @@ -17,6 +17,8 @@ public class MessageRetractionManager { + protected Federate federate; + protected AtomicLong messageRetractionCount = new AtomicLong(); protected Lock messageRetractionsLock = new ReentrantLock(true); @@ -25,8 +27,9 @@ protected Queue<MessageRetraction> messageRetractionsByExpiration = new PriorityQueue<MessageRetraction>(); - public MessageRetractionManager() + public MessageRetractionManager(Federate federate) { + this.federate = federate; } public MessageRetractionHandle add(LogicalTime time) Modified: trunk/rti/src/java/net/sf/ohla/rti1516/federate/RegionManager.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federate/RegionManager.java 2006-12-10 19:05:45 UTC (rev 78) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federate/RegionManager.java 2006-12-16 03:12:41 UTC (rev 79) @@ -11,16 +11,17 @@ import net.sf.ohla.rti1516.OHLARegionHandleSet; import net.sf.ohla.rti1516.fdd.FDD; +import net.sf.ohla.rti1516.messages.CreateRegion; import net.sf.ohla.rti1516.messages.CommitRegionModifications; -import net.sf.ohla.rti1516.messages.CreateRegion; +import net.sf.ohla.rti1516.messages.RegionCreated; +import net.sf.ohla.rti1516.messages.RegionModificationsCommitted; import net.sf.ohla.rti1516.messages.DeleteRegion; +import net.sf.ohla.rti1516.messages.RegionDeleted; import net.sf.ohla.rti1516.messages.GetRangeBounds; -import org.apache.mina.common.IoSession; import org.apache.mina.common.WriteFuture; import hla.rti1516.AttributeHandleSet; -import hla.rti1516.AttributeHandleSetFactory; import hla.rti1516.AttributeRegionAssociation; import hla.rti1516.DimensionHandle; import hla.rti1516.DimensionHandleSet; @@ -39,20 +40,15 @@ public class RegionManager { - protected IoSession rtiSession; - protected FDD fdd; - protected AttributeHandleSetFactory attributeHandleSetFactory; + protected Federate federate; protected ReadWriteLock regionsLock = new ReentrantReadWriteLock(true); protected Map<RegionHandle, Region> regions = new HashMap<RegionHandle, Region>(); - public RegionManager(IoSession rtiSession, FDD fdd, - AttributeHandleSetFactory attributeHandleSetFactory) + public RegionManager(Federate federate) { - this.rtiSession = rtiSession; - this.fdd = fdd; - this.attributeHandleSetFactory = attributeHandleSetFactory; + this.federate = federate; } public RegionHandle createRegion(DimensionHandleSet dimensionHandles) @@ -61,7 +57,7 @@ try { CreateRegion createRegion = new CreateRegion(dimensionHandles); - WriteFuture writeFuture = rtiSession.write(createRegion); + WriteFuture writeFuture = federate.getRTISession().write(createRegion); // TODO: set timeout // @@ -83,13 +79,15 @@ try { regions.put(regionHandle, new Region( - regionHandle, dimensionHandles, fdd)); + regionHandle, dimensionHandles, federate.getFDD())); } finally { regionsLock.writeLock().unlock(); } + federate.sendToPeers(new RegionCreated(regionHandle, dimensionHandles)); + return regionHandle; } catch (InterruptedException ie) @@ -149,7 +147,8 @@ { GetRangeBounds getRangeBounds = new GetRangeBounds(regionHandle, dimensionHandle); - WriteFuture writeFuture = rtiSession.write(getRangeBounds); + WriteFuture writeFuture = + federate.getRTISession().write(getRangeBounds); // TODO: set timeout // @@ -236,7 +235,8 @@ { CommitRegionModifications commitRegionModifications = new CommitRegionModifications(regionModifications); - WriteFuture writeFuture = rtiSession.write(commitRegionModifications); + WriteFuture writeFuture = federate.getRTISession().write( + commitRegionModifications); // TODO: set timeout // @@ -250,6 +250,9 @@ // TODO: set timeout // commitRegionModifications.await(); + + federate.sendToPeers( + new RegionModificationsCommitted(regionModifications)); } catch (InterruptedException ie) { @@ -279,7 +282,7 @@ region.checkIfInUse(); DeleteRegion deleteRegion = new DeleteRegion(regionHandle); - WriteFuture writeFuture = rtiSession.write(deleteRegion); + WriteFuture writeFuture = federate.getRTISession().write(deleteRegion); // TODO: set timeout // @@ -295,6 +298,8 @@ deleteRegion.await(); regions.remove(regionHandle); + + federate.sendToPeers(new RegionDeleted(regionHandle)); } catch (InterruptedException ie) { @@ -575,7 +580,8 @@ associatedObjects.get(objectInstanceHandle); if (existingAttributeHandles == null) { - existingAttributeHandles = attributeHandleSetFactory.create(); + existingAttributeHandles = + federate.getAttributeHandleSetFactory().create(); associatedObjects.put(objectInstanceHandle, existingAttributeHandles); } @@ -606,7 +612,8 @@ subscribedObjectClasses.get(objectClassHandle); if (existingAttributeHandles == null) { - existingAttributeHandles = attributeHandleSetFactory.create(); + existingAttributeHandles = + federate.getAttributeHandleSetFactory().create(); subscribedObjectClasses.put(objectClassHandle, existingAttributeHandles); } Modified: trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/CallbackManager.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/CallbackManager.java 2006-12-10 19:05:45 UTC (rev 78) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federate/callbacks/CallbackManager.java 2006-12-16 03:12:41 UTC (rev 79) @@ -22,10 +22,11 @@ import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; +import net.sf.ohla.rti1516.federate.Federate; + import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import hla.rti1516.FederateAmbassador; import hla.rti1516.RTIexception; public class CallbackManager @@ -33,7 +34,7 @@ private static final Logger log = LoggerFactory.getLogger(CallbackManager.class); - protected FederateAmbassador federateAmbassador; + protected Federate federate; protected boolean enabled = true; @@ -43,9 +44,9 @@ protected Queue<Callback> heldCallbacks = new LinkedList<Callback>(); - public CallbackManager(FederateAmbassador federateAmbassador) + public CallbackManager(Federate federate) { - this.federateAmbassador = federateAmbassador; + this.federate = federate; } public void add(Callback callback) @@ -125,17 +126,17 @@ nanoTime + maxNanosTimeout, nanoTime); } - public void enableCallbacks() + public synchronized void enableCallbacks() { enabled = true; } - public void disableCallbacks() + public synchronized void disableCallbacks() { enabled = false; } - protected boolean evokeCallback(long nanoTimeout) + protected synchronized boolean evokeCallback(long nanoTimeout) { Callback callback = null; @@ -160,7 +161,7 @@ { try { - callback.execute(federateAmbassador); + callback.execute(federate.getFederateAmbassador()); } catch (Throwable t) { @@ -171,9 +172,9 @@ return areCallbacksPending(); } - protected boolean evokeMultipleCallbacks(long minNanoExpiration, - long maxNanoExpiration, - long nanoTime) + protected synchronized boolean evokeMultipleCallbacks(long minNanoExpiration, + long maxNanoExpiration, + long nanoTime) { while ((nanoTime < minNanoExpiration && evokeCallback(minNanoExpiration - nanoTime)) || @@ -187,14 +188,14 @@ return areCallbacksPending(); } - protected boolean evokeCallback() + protected synchronized boolean evokeCallback() { Callback callback = nextCallback(); if (callback != null) { try { - callback.execute(federateAmbassador); + callback.execute(federate.getFederateAmbassador()); } catch (RTIexception rtie) { Modified: trunk/rti/src/java/net/sf/ohla/rti1516/federate/filter/InterestManagementFilter.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federate/filter/InterestManagementFilter.java 2006-12-10 19:05:45 UTC (rev 78) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federate/filter/InterestManagementFilter.java 2006-12-16 03:12:41 UTC (rev 79) @@ -20,6 +20,7 @@ import net.sf.ohla.rti1516.fdd.InteractionClass; import net.sf.ohla.rti1516.fdd.ObjectClass; +import net.sf.ohla.rti1516.federate.Federate; import net.sf.ohla.rti1516.federate.SubscriptionManager; import net.sf.ohla.rti1516.federate.callbacks.ReceiveInteraction; import net.sf.ohla.rti1516.federate.callbacks.ReflectAttributeValues; Copied: trunk/rti/src/java/net/sf/ohla/rti1516/federate/objects (from rev 72, trunk/rti/src/java/net/sf/ohla/rti1516/federate/objects) Deleted: trunk/rti/src/java/net/sf/ohla/rti1516/federate/objects/AttributeInstance.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federate/objects/AttributeInstance.java 2006-12-06 04:09:24 UTC (rev 72) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federate/objects/AttributeInstance.java 2006-12-16 03:12:41 UTC (rev 79) @@ -1,121 +0,0 @@ -/* - * Copyright (c) 2006, Michael Newcomb - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package net.sf.ohla.rti1516.federate.objects; - -import java.io.Serializable; - -import net.sf.ohla.rti1516.fdd.Attribute; -import net.sf.ohla.rti1516.OHLARegionHandleSet; - -import hla.rti1516.AttributeAlreadyBeingDivested; -import hla.rti1516.AttributeDivestitureWasNotRequested; -import hla.rti1516.AttributeHandle; -import hla.rti1516.OrderType; -import hla.rti1516.RegionHandleSet; -import hla.rti1516.TransportationType; - -public class AttributeInstance - implements Serializable -{ - protected final Attribute attribute; - - protected TransportationType transportationType; - protected OrderType orderType; - - protected RegionHandleSet associatedRegions = new OHLARegionHandleSet(); - - public AttributeInstance(Attribute attribute) - { - this.attribute = attribute; - - transportationType = attribute.getTransportationType(); - orderType = attribute.getOrderType(); - } - - public Attribute getAttribute() - { - return attribute; - } - - public AttributeHandle getAttributeHandle() - { - return attribute.getAttributeHandle(); - } - - public TransportationType getTransportationType() - { - return transportationType; - } - - public void setTransportationType(TransportationType transportationType) - { - this.transportationType = transportationType; - } - - public OrderType getOrderType() - { - return orderType; - } - - public void setOrderType(OrderType orderType) - { - this.orderType = orderType; - } - - public RegionHandleSet getAssociatedRegions() - { - return associatedRegions; - } - - public void associateRegionsForUpdates(RegionHandleSet regionHandles) - { - associatedRegions.addAll(regionHandles); - } - - public void unassociateRegionsForUpdates(RegionHandleSet regionHandles) - { - associatedRegions.removeAll(regionHandles); - } - - public void negotiatedAttributeOwnershipDivestiture() - { - } - - public void confirmDivestiture() - { - } - - public void cancelNegotiatedAttributeOwnershipDivestiture() - { - } - - public void cancelAttributeOwnershipAcquisition() - { - } - - public void checkIfAttributeDivestitureWasNotRequested() - throws AttributeDivestitureWasNotRequested - { - // TODO: check status - } - - public void checkIfAttributeAlreadyBeingDivested() - throws AttributeAlreadyBeingDivested - { - // TODO: check status - } -} Copied: trunk/rti/src/java/net/sf/ohla/rti1516/federate/objects/AttributeInstance.java (from rev 72, trunk/rti/src/java/net/sf/ohla/rti1516/federate/objects/AttributeInstance.java) =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federate/objects/AttributeInstance.java (rev 0) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federate/objects/AttributeInstance.java 2006-12-16 03:12:41 UTC (rev 79) @@ -0,0 +1,121 @@ +/* + * Copyright (c) 2006, Michael Newcomb + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.sf.ohla.rti1516.federate.objects; + +import java.io.Serializable; + +import net.sf.ohla.rti1516.fdd.Attribute; +import net.sf.ohla.rti1516.OHLARegionHandleSet; + +import hla.rti1516.AttributeAlreadyBeingDivested; +import hla.rti1516.AttributeDivestitureWasNotRequested; +import hla.rti1516.AttributeHandle; +import hla.rti1516.OrderType; +import hla.rti1516.RegionHandleSet; +import hla.rti1516.TransportationType; + +public class AttributeInstance + implements Serializable +{ + protected final Attribute attribute; + + protected TransportationType transportationType; + protected OrderType orderType; + + protected RegionHandleSet associatedRegions = new OHLARegionHandleSet(); + + public AttributeInstance(Attribute attribute) + { + this.attribute = attribute; + + transportationType = attribute.getTransportationType(); + orderType = attribute.getOrderType(); + } + + public Attribute getAttribute() + { + return attribute; + } + + public AttributeHandle getAttributeHandle() + { + return attribute.getAttributeHandle(); + } + + public TransportationType getTransportationType() + { + return transportationType; + } + + public void setTransportationType(TransportationType transportationType) + { + this.transportationType = transportationType; + } + + public OrderType getOrderType() + { + return orderType; + } + + public void setOrderType(OrderType orderType) + { + this.orderType = orderType; + } + + public RegionHandleSet getAssociatedRegions() + { + return associatedRegions; + } + + public void associateRegionsForUpdates(RegionHandleSet regionHandles) + { + associatedRegions.addAll(regionHandles); + } + + public void unassociateRegionsForUpdates(RegionHandleSet regionHandles) + { + associatedRegions.removeAll(regionHandles); + } + + public void negotiatedAttributeOwnershipDivestiture() + { + } + + public void confirmDivestiture() + { + } + + public void cancelNegotiatedAttributeOwnershipDivestiture() + { + } + + public void cancelAttributeOwnershipAcquisition() + { + } + + public void checkIfAttributeDivestitureWasNotRequested() + throws AttributeDivestitureWasNotRequested + { + // TODO: check status + } + + public void checkIfAttributeAlreadyBeingDivested() + throws AttributeAlreadyBeingDivested + { + // TODO: check status + } +} Deleted: trunk/rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectInstance.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectInstance.java 2006-12-06 04:09:24 UTC (rev 72) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectInstance.java 2006-12-16 03:12:41 UTC (rev 79) @@ -1,1125 +0,0 @@ -/* - * Copyright (c) 2006, Michael Newcomb - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package net.sf.ohla.rti1516.federate.objects; - -import java.io.Serializable; - -import java.util.HashMap; -import java.util.HashSet; -import java.util.Map; -import java.util.Set; -import java.util.concurrent.ExecutionException; -import java.util.concurrent.locks.ReadWriteLock; -import java.util.concurrent.locks.ReentrantReadWriteLock; - -import net.sf.ohla.rti1516.fdd.Attribute; -import net.sf.ohla.rti1516.fdd.ObjectClass; -import net.sf.ohla.rti1516.federate.Federate; -import net.sf.ohla.rti1516.federate.callbacks.ReflectAttributeValues; -import net.sf.ohla.rti1516.OHLAAttributeHandleSet; -import net.sf.ohla.rti1516.OHLARegionHandleSet; -import net.sf.ohla.rti1516.messages.AttributeOwnershipAcquisition; -import net.sf.ohla.rti1516.messages.AttributeOwnershipAcquisitionIfAvailable; -import net.sf.ohla.rti1516.messages.AttributeOwnershipDivestitureIfWanted; -import net.sf.ohla.rti1516.messages.AttributeOwnershipDivestitureIfWantedResponse; -import net.sf.ohla.rti1516.messages.CancelAttributeOwnershipAcquisition; -import net.sf.ohla.rti1516.messages.CancelNegotiatedAttributeOwnershipDivestiture; -import net.sf.ohla.rti1516.messages.ConfirmDivestiture; -import net.sf.ohla.rti1516.messages.DefaultResponse; -import net.sf.ohla.rti1516.messages.NegotiatedAttributeOwnershipDivestiture; -import net.sf.ohla.rti1516.messages.QueryAttributeOwnership; -import net.sf.ohla.rti1516.messages.RequestAttributeValueUpdate; -import net.sf.ohla.rti1516.messages.UnconditionalAttributeOwnershipDivestiture; - -import org.apache.mina.common.IoSession; -import org.apache.mina.common.WriteFuture; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import hla.rti1516.AttributeAcquisitionWasNotRequested; -import hla.rti1516.AttributeAlreadyBeingAcquired; -import hla.rti1516.AttributeAlreadyBeingDivested; -import hla.rti1516.AttributeAlreadyOwned; -import hla.rti1516.AttributeDivestitureWasNotRequested; -import hla.rti1516.AttributeHandle; -import hla.rti1516.AttributeHandleSet; -import hla.rti1516.AttributeHandleValueMap; -import hla.rti1516.AttributeNotDefined; -import hla.rti1516.AttributeNotOwned; -import hla.rti1516.AttributeRegionAssociation; -import hla.rti1516.DeletePrivilegeNotHeld; -import hla.rti1516.FederateAmbassador; -import hla.rti1516.FederateOwnsAttributes; -import hla.rti1516.LogicalTime; -import hla.rti1516.MessageRetractionHandle; -import hla.rti1516.ObjectClassHandle; -import hla.rti1516.ObjectInstanceHandle; -import hla.rti1516.OrderType; -import hla.rti1516.OwnershipAcquisitionPending; -import hla.rti1516.RTIinternalError; -import hla.rti1516.RegionHandleSet; -import hla.rti1516.TransportationType; - -public class ObjectInstance - implements Serializable -{ - private static final Logger log = - LoggerFactory.getLogger(ObjectInstance.class); - - protected final ObjectInstanceHandle objectInstanceHandle; - protected final ObjectClass objectClass; - protected final String name; - - protected Map<AttributeHandle, AttributeInstance> attributes = - new HashMap<AttributeHandle, AttributeInstance>(); - - protected Set<AttributeHandle> attributeHandlesBeingAcquired = - new HashSet<AttributeHandle>(); - protected Set<AttributeHandle> attributeHandlesBeingAcquiredIfAvailable = - new HashSet<AttributeHandle>(); - - protected ReadWriteLock objectLock = new ReentrantReadWriteLock(true); - - public ObjectInstance(ObjectInstanceHandle objectInstanceHandle, - ObjectClass objectClass, String name) - { - this.objectInstanceHandle = objectInstanceHandle; - this.objectClass = objectClass; - this.name = name; - } - - public ObjectInstance(ObjectInstanceHandle objectInstanceHandle, - ObjectClass objectClass, String name, - Set<AttributeHandle> publishedAttributeHandles) - { - this(objectInstanceHandle, objectClass, name); - - for (AttributeHandle attributeHandle : publishedAttributeHandles) - { - Attribute attribute = objectClass.getAttributes().get(attributeHandle); - assert attribute != null; - - // create an attribute instance for each of the published attributes - // - attributes.put(attributeHandle, new AttributeInstance(attribute)); - } - - Attribute attribute = objectClass.getAttributesByName().get( - Attribute.HLA_PRIVILEGE_TO_DELETE_OBJECT); - assert attribute != null; - if (!attributes.containsKey(attribute.getAttributeHandle())) - { - // create an attribute instance for the HLA privilege to delete - // object attribute - // - attributes.put(attribute.getAttributeHandle(), - new AttributeInstance(attribute)); - } - } - - public ObjectInstanceHandle getObjectInstanceHandle() - { - return objectInstanceHandle; - } - - public ObjectClassHandle getObjectClassHandle() - { - return objectClass.getObjectClassHandle(); - } - - public ObjectClass getObjectClass() - { - return objectClass; - } - - public String getName() - { - return name; - } - - public void updateAttributeValues(AttributeHandleValueMap attributeValues, - byte[] tag, Federate federate) - throws AttributeNotDefined, AttributeNotOwned - { - objectLock.readLock().lock(); - try - { - checkIfAttributeNotOwned(attributeValues.keySet()); - - federate.sendToPeers(new ReflectAttributeValues( - objectInstanceHandle, objectClass.getObjectClassHandle(), - attributeValues, tag, OrderType.RECEIVE, - TransportationType.HLA_RELIABLE)); - } - finally - { - objectLock.readLock().unlock(); - } - } - - public void updateAttributeValues( - AttributeHandleValueMap attributeValues, byte[] tag, - LogicalTime updateTime, MessageRetractionHandle messageRetractionHandle, - OrderType sentOrderType, Federate federate) - throws AttributeNotDefined, AttributeNotOwned - { - objectLock.readLock().lock(); - try - { - if (sentOrderType == OrderType.TIMESTAMP) - { - // TODO: divide attributes by order type - } - - RegionHandleSet sentRegionHandles = new OHLARegionHandleSet(); - for (AttributeHandle attributeHandle : attributeValues.keySet()) - { - sentRegionHandles.addAll( - getAttributeInstance(attributeHandle).getAssociatedRegions()); - } - - federate.sendToPeers(new ReflectAttributeValues( - objectInstanceHandle, objectClass.getObjectClassHandle(), - attributeValues, tag, sentOrderType, TransportationType.HLA_RELIABLE, - updateTime, messageRetractionHandle, sentRegionHandles)); - } - finally - { - objectLock.readLock().unlock(); - } - } - - public void deleteObjectInstance(byte[] tag) - throws DeletePrivilegeNotHeld - { - objectLock.readLock().lock(); - try - { - Attribute attribute = objectClass.getAttributesByName().get( - Attribute.HLA_PRIVILEGE_TO_DELETE_OBJECT); - assert attribute != null; - if (!attributes.containsKey(attribute.getAttributeHandle())) - { - throw new DeletePrivilegeNotHeld(objectInstanceHandle.toString()); - } - } - finally - { - objectLock.readLock().unlock(); - } - } - - public void localDeleteObjectInstance() - throws FederateOwnsAttributes - { - objectLock.readLock().lock(); - try - { - if (!attributes.isEmpty()) - { - throw new FederateOwnsAttributes(String.format( - "%s - %s", objectInstanceHandle, attributes.keySet())); - } - } - finally - { - objectLock.readLock().unlock(); - } - } - - public void unconditionalAttributeOwnershipDivestiture( - AttributeHandleSet attributeHandles, IoSession rtiSession) - throws AttributeNotDefined, AttributeNotOwned, RTIinternalError - { - WriteFuture writeFuture; - - objectLock.writeLock().lock(); - try - { - checkIfAttributeNotOwned(attributeHandles); - - attributes.keySet().removeAll(attributeHandles); - - writeFuture = rtiSession.write( - new UnconditionalAttributeOwnershipDivestiture( - objectInstanceHandle, attributeHandles)); - } - finally - { - objectLock.writeLock().unlock(); - } - - // TODO: set timeout - // - writeFuture.join(); - if (!writeFuture.isWritten()) - { - throw new RTIinternalError("error communicating with RTI"); - } - } - - public void negotiatedAttributeOwnershipDivestiture( - AttributeHandleSet attributeHandles, byte[] tag, IoSession rtiSession) - throws AttributeNotDefined, AttributeNotOwned, - AttributeAlreadyBeingDivested, RTIinternalError - { - WriteFuture writeFuture; - - objectLock.writeLock().lock(); - try - { - checkIfAttributeAlreadyBeingDivested(attributeHandles); - - for (AttributeHandle attributeHandle : attributeHandles) - { - getAttributeInstance( - attributeHandle).negotiatedAttributeOwnershipDivestiture(); - } - - writeFuture = rtiSession.write( - new NegotiatedAttributeOwnershipDivestiture( - objectInstanceHandle, attributeHandles, tag)); - } - finally - { - objectLock.writeLock().unlock(); - } - - // TODO: set timeout - // - writeFuture.join(); - if (!writeFuture.isWritten()) - { - throw new RTIinternalError("error communicating with RTI"); - } - } - - public void confirmDivestiture(AttributeHandleSet attributeHandles, - byte[] tag, IoSession rtiSession) - throws AttributeNotDefined, AttributeNotOwned, - AttributeDivestitureWasNotRequested, RTIinternalError - { - WriteFuture writeFuture; - - objectLock.writeLock().lock(); - try - { - checkIfAttributeDivestitureWasNotRequested(attributeHandles); - - for (AttributeHandle attributeHandle : attributeHandles) - { - getAttributeInstance(attributeHandle).confirmDivestiture(); - attributes.remove(attributeHandle); - } - - writeFuture = rtiSession.write( - new ConfirmDivestiture(objectInstanceHandle, attributeHandles, tag)); - } - finally - { - objectLock.writeLock().unlock(); - } - - // TODO: set timeout - // - writeFuture.join(); - if (!writeFuture.isWritten()) - { - throw new RTIinternalError("error communicating with RTI"); - } - } - - public void attributeOwnershipAcquisition( - AttributeHandleSet attributeHandles, byte[] tag, IoSession rtiSession) - throws FederateOwnsAttributes, RTIinternalError - { - WriteFuture writeFuture; - - objectLock.writeLock().lock(); - try - { - checkIfFederateOwnsAttributes(attributeHandles); - - attributeHandlesBeingAcquired.addAll(attributeHandles); - - writeFuture = - rtiSession.write(new AttributeOwnershipAcquisition( - objectInstanceHandle, attributeHandles, tag)); - } - finally - { - objectLock.writeLock().unlock(); - } - - // TODO: set timeout - // - writeFuture.join(); - if (!writeFuture.isWritten()) - { - throw new RTIinternalError("error communicating with RTI"); - } - } - - public void attributeOwnershipAcquisitionIfAvailable( - AttributeHandleSet attributeHandles, IoSession rtiSession) - throws AttributeNotDefined, FederateOwnsAttributes, - AttributeAlreadyBeingAcquired, RTIinternalError - { - WriteFuture writeFuture; - - objectLock.writeLock().lock(); - try - { - Set<AttributeHandle> ownedAttributeHandles = - new HashSet<AttributeHandle>(); - Set<AttributeHandle> attributeHandlesAlreadyBeingAcquired = - new HashSet<AttributeHandle>(); - - for (AttributeHandle attributeHandle : attributeHandles) - { - objectClass.checkIfAttributeNotDefined(attributeHandle); - - if (attributes.containsKey(attributeHandle)) - { - ownedAttributeHandles.add(attributeHandle); - } - else if (attributeHandlesBeingAcquiredIfAvailable.contains( - attributeHandle)) - { - attributeHandlesAlreadyBeingAcquired.add(attributeHandle); - } - } - - if (!ownedAttributeHandles.isEmpty()) - { - throw new FederateOwnsAttributes(String.format( - "%s - %s", objectInstanceHandle, ownedAttributeHandles)); - } - else if (!attributeHandlesAlreadyBeingAcquired.isEmpty()) - { - throw new AttributeAlreadyBeingAcquired( - attributeHandlesAlreadyBeingAcquired.toString()); - } - - attributeHandlesBeingAcquiredIfAvailable.addAll(attributeHandles); - - writeFuture = - rtiSession.write(new AttributeOwnershipAcquisitionIfAvailable( - objectInstanceHandle, attributeHandles)); - } - finally - { - objectLock.writeLock().unlock(); - } - - // TODO: set timeout - // - writeFuture.join(); - if (!writeFuture.isWritten()) - { - throw new RTIinternalError("error communicating with RTI"); - } - } - - public AttributeHandleSet attributeOwnershipDivestitureIfWanted( - AttributeHandleSet attributeHandles, IoSession rtiSession) - throws AttributeNotDefined, AttributeNotOwned, RTIinternalError - { - objectLock.writeLock().lock(); - try - { - checkIfAttributeNotOwned(attributeHandles); - - AttributeOwnershipDivestitureIfWanted - attributeOwnershipDivestitureIfWanted = - new AttributeOwnershipDivestitureIfWanted( - objectInstanceHandle, attributeHandles); - WriteFuture writeFuture = - rtiSession.write(attributeOwnershipDivestitureIfWanted); - - // TODO: set timeout - // - writeFuture.join(); - - if (!writeFuture.isWritten()) - { - throw new RTIinternalError("error communicating with RTI"); - } - - try - { - // TODO: set timeout - // - Object response = attributeOwnershipDivestitureIfWanted.getResponse(); - - assert response instanceof AttributeOwnershipDivestitureIfWantedResponse : - String.format("unexpected response: %s", response); - - AttributeOwnershipDivestitureIfWantedResponse - attributeOwnershipDivestitureIfWantedResponse = - (AttributeOwnershipDivestitureIfWantedResponse) response; - - AttributeHandleSet divestedAttributeHandles = - attributeOwnershipDivestitureIfWantedResponse.getAttributeHandles(); - - attributes.keySet().removeAll(divestedAttributeHandles); - - // confirm that the attributes have been divested - // - writeFuture = rtiSession.write(new DefaultResponse( - attributeOwnershipDivestitureIfWantedResponse.getId())); - - if (!writeFuture.isWritten()) - { - throw new RTIinternalError("error communicating with RTI"); - } - - return divestedAttributeHandles; - } - catch (InterruptedException ie) - { - throw new RTIinternalError("interrupted awaitng response", ie); - } - catch (ExecutionException ee) - { - throw new RTIinternalError("unable to get response", ee); - } - } - finally - { - objectLock.writeLock().unlock(); - } - } - - public void cancelNegotiatedAttributeOwnershipDivestiture( - AttributeHandleSet attributeHandles, IoSession rtiSession) - throws AttributeNotDefined, AttributeNotOwned, - AttributeDivestitureWasNotRequested, RTIinternalError - { - WriteFuture writeFuture; - - objectLock.readLock().lock(); - try - { - for (AttributeHandle attributeHandle : attributeHandles) - { - getAttributeInstance( - attributeHandle).checkIfAttributeDivestitureWasNotRequested(); - } - - for (AttributeHandle attributeHandle : attributeHandles) - { - getAttributeInstance( - attributeHandle).cancelNegotiatedAttributeOwnershipDivestiture(); - } - - writeFuture = rtiSession.write( - new CancelNegotiatedAttributeOwnershipDivestiture( - objectInstanceHandle, attributeHandles)); - } - finally - { - objectLock.readLock().unlock(); - } - - // TODO: set timeout - // - writeFuture.join(); - if (!writeFuture.isWritten()) - { - throw new RTIinternalError("error communicating with RTI"); - } - } - - public void cancelAttributeOwnershipAcquisition( - AttributeHandleSet attributeHandles, IoSession rtiSession) - throws AttributeNotDefined, AttributeAlreadyOwned, - AttributeAcquisitionWasNotRequested, RTIinternalError - { - WriteFuture writeFuture; - - objectLock.readLock().lock(); - try - { - for (AttributeHandle attributeHandle : attributeHandles) - { - AttributeInstance attributeInstance = attributes.get(attributeHandle); - if (attributeInstance != null) - { - throw new AttributeAlreadyOwned(String.format("%s", attributeHandle)); - } - else if (!attributeHandlesBeingAcquired.contains(attributeHandle)) - { - throw new AttributeAcquisitionWasNotRequested( - String.format("%s", attributeHandle)); - } - else - { - objectClass.checkIfAttributeNotDefined(attributeHandle); - } - } - - for (AttributeHandle attributeHandle : attributeHandles) - { - attributes.get(attributeHandle).cancelAttributeOwnershipAcquisition(); - } - - writeFuture = rtiSession.write( - new CancelAttributeOwnershipAcquisition( - objectInstanceHandle, attributeHandles)); - } - finally - { - objectLock.readLock().unlock(); - } - - // TODO: set timeout - // - writeFuture.join(); - if (!writeFuture.isWritten()) - { - throw new RTIinternalError("error communicating with RTI"); - } - } - - public void queryAttributeOwnership(AttributeHandle attributeHandle, - IoSession rtiSession) - throws AttributeNotDefined, RTIinternalError - { - objectClass.checkIfAttributeNotDefined(attributeHandle); - - WriteFuture writeFuture; - - objectLock.readLock().lock(); - try - { - writeFuture = rtiSession.write( - new QueryAttributeOwnership(objectInstanceHandle, attributeHandle)); - } - finally - { - objectLock.readLock().unlock(); - } - - // TODO: set timeout - // - writeFuture.join(); - if (!writeFuture.isWritten()) - { - throw new RTIinternalError("error communicating with RTI"); - } - } - - public boolean isAttributeOwnedByFederate(AttributeHandle attributeHandle) - throws AttributeNotDefined - { - boolean owned; - - objectLock.readLock().lock(); - try - { - owned = attributes.get(attributeHandle) != null; - } - finally - { - objectLock.readLock().unlock(); - } - - if (!owned) - { - objectClass.checkIfAttributeNotDefined(attributeHandle); - } - - return owned; - } - - public void changeAttributeOrderType(Set<AttributeHandle> attributeHandles, - OrderType orderType) - throws AttributeNotDefined, AttributeNotOwned - { - objectLock.readLock().lock(); - try - { - for (AttributeHandle attributeHandle : attributeHandles) - { - getAttributeInstance(attributeHandle).setOrderType(orderType); - } - } - finally - { - objectLock.readLock().unlock(); - } - } - - public void changeAttributeTransportationType( - Set<AttributeHandle> attributeHandles, - TransportationType transportationType) - throws AttributeNotDefined, AttributeNotOwned - { - objectLock.readLock().lock(); - try - { - for (AttributeHandle attributeHandle : attributeHandles) - { - getAttributeInstance(attributeHandle).setTransportationType( - transportationType); - } - } - finally - { - objectLock.readLock().unlock(); - } - } - - public void requestAttributeValueUpdate(AttributeHandleSet attributeHandles, - byte[] tag, Federate federate) - throws AttributeNotDefined - { - objectClass.checkIfAttributeNotDefined(attributeHandles); - - attributeHandles = new OHLAAttributeHandleSet(attributeHandles); - - objectLock.readLock().lock(); - try - { - // only request updates for un-owned attributes - // - attributeHandles.removeAll(attributes.keySet()); - - federate.sendToPeers(new RequestAttributeValueUpdate( - objectInstanceHandle, attributeHandles, tag)); - } - finally - { - objectLock.readLock().unlock(); - } - } - - public void associateRegionsForUpdates( - AttributeRegionAssociation attributeRegionAssociation) - { - objectLock.readLock().lock(); - try - { - for (AttributeHandle attributeHandle : attributeRegionAssociation.attributes) - { - AttributeInstance attribute = attributes.get(attributeHandle); - if (attribute != null) - { - attribute.associateRegionsForUpdates( - attributeRegionAssociation.regions); - } - } - } - finally - { - objectLock.readLock().unlock(); - } - } - - public void unassociateRegionsForUpdates( - AttributeRegionAssociation attributeRegionAssociation) - { - objectLock.readLock().lock(); - try - { - for (AttributeHandle attributeHandle : attributeRegionAssociation.attributes) - { - AttributeInstance attribute = attributes.get(attributeHandle); - if (attribute != null) - { - attribute.unassociateRegionsForUpdates( - attributeRegionAssociation.regions); - } - } - } - finally - { - objectLock.readLock().unlock(); - } - } - - public void unpublishObjectClassAttributes( - AttributeHandleSet attributeHandles, IoSession rtiSession) - throws RTIinternalError - { - WriteFuture writeFuture; - - objectLock.writeLock().lock(); - try - { - attributes.keySet().removeAll(attributeHandles); - - writeFuture = rtiSession.write( - new UnconditionalAttributeOwnershipDivestiture( - objectInstanceHandle, attributeHandles)); - } - finally - { - objectLock.writeLock().unlock(); - } - - // TODO: set timeout - // - writeFuture.join(); - if (!writeFuture.isWritten()) - { - throw new RTIinternalError("error communicating with RTI"); - } - } - - public void checkIfOwnershipAcquisitionPending() - throws OwnershipAcquisitionPending - { - objectLock.writeLock().lock(); - try - { - if (!attributeHandlesBeingAcquired.isEmpty() || - !attributeHandlesBeingAcquiredIfAvailable.isEmpty()) - { - AttributeHandleSet allAttributeHandlesBeingAcquired = - new OHLAAttributeHandleSet(attributeHandlesBeingAcquired); - allAttributeHandlesBeingAcquired.addAll( - attributeHandlesBeingAcquiredIfAvailable); - throw new OwnershipAcquisitionPending( - allAttributeHandlesBeingAcquired.toString()); - } - } - finally - { - objectLock.writeLock().unlock(); - } - } - - public void checkIfOwnershipAcquisitionPending( - Set<AttributeHandle> attributeHandles) - throws OwnershipAcquisitionPending - { - objectLock.writeLock().lock(); - try - { - AttributeHandleSet allAttributeHandlesBeingAcquired = - new OHLAAttributeHandleSet(); - for (AttributeHandle attributeHandle : attributeHandles) - { - if (attributeHandlesBeingAcquired.contains(attributeHandle) || - attributeHandlesBeingAcquiredIfAvailable.contains(attributeHandle)) - { - allAttributeHandlesBeingAcquired.add(attributeHandle); - } - } - - if (!allAttributeHandlesBeingAcquired.isEmpty()) - { - throw new OwnershipAcquisitionPending( - allAttributeHandlesBeingAcquired.toString()); - } - } - finally - { - objectLock.writeLock().unlock(); - } - } - - public void checkIfFederateOwnsAttributes() - throws FederateOwnsAttributes - { - objectLock.readLock().lock(); - try - { - if (!attributes.isEmpty()) - { - throw new FederateOwnsAttributes(String.format( - "%s - %s", objectInstanceHandle, attributes.keySet())); - } - } - finally - { - objectLock.readLock().unlock(); - } - } - - public int hashCode() - { - return objectInstanceHandle.hashCode(); - } - - public boolean equals(Object rhs) - { - return rhs instanceof ObjectInstance && equals((ObjectInstance) rhs); - } - - public boolean equals(ObjectInstance rhs) - { - return rhs != null && objectInstanceHandle.equals(rhs.objectInstanceHandle); - } - - public String toString() - { - return String.format("%s (%s, %s)", objectInstanceHandle, name, - objectClass); - } - - protected AttributeInstance getAttributeInstance( - AttributeHandle attributeHandle) - throws AttributeNotDefined, AttributeNotOwned - { - AttributeInstance attributeInstance = attributes.get(attributeHandle); - if (attributeInstance == null) - { - // it might not be defined - // - objectClass.checkIfAttributeNotDefined(attributeHandle); - - throw new AttributeNotOwned(String.format("%s", attributeHandle)); - } - return attributeInstance; - } - - protected void checkIfAttributeNotOwned(Set<AttributeHandle> attributeHandles) - throws AttributeNotDefined, AttributeNotOwned - { - for (AttributeHandle attributeHandle : attributeHandles) - { - if (!attributes.containsKey(attributeHandle)) - { - // it might not be defined - // - objectClass.checkIfAttributeNotDefined(attributeHandle); - - throw new AttributeNotOwned(String.format("%s", attributeHandle)); - } - } - } - - protected void checkIfAttributeAlreadyBeingDivested( - Set<AttributeHandle> attributeHandles) - throws AttributeNotDefined, AttributeNotOwned, AttributeAlreadyBeingDivested - { - for (AttributeHandle attributeHandle : attributeHandles) - { - getAttributeInstance( - attributeHandle).checkIfAttributeAlreadyBeingDivested(); - } - } - - protected void checkIfAttributeDivestitureWasNotRequested( - Set<AttributeHandle> attributeHandles) - throws AttributeNotDefined, AttributeNotOwned, - AttributeDivestitureWasNotRequested - { - for (AttributeHandle attributeHandle : attributeHandles) - { - getAttributeInstance( - attributeHandle).checkIfAttributeDivestitureWasNotRequested(); - } - } - - protected void checkIfFederateOwnsAttributes( - Set<AttributeHandle> attributeHandles) - throws FederateOwnsAttributes - { - Set<AttributeHandle> ownedAttributeHandles = null; - for (AttributeHandle attributeHandle : attributeHandles) - { - if (attributes.containsKey(attributeHandle)) - { - if (ownedAttributeHandles == null) - { - ownedAttributeHandles = new HashSet<AttributeHandle>(); - } - ownedAttributeHandles.add(attributeHandle); - } - } - if (ownedAttributeHandles != null) - { - throw new FederateOwnsAttributes(String.format( - "%s - %s", objectInstanceHandle, ownedAttributeHandles)); - } - } - - public void discoverObjectInstance(ObjectInstanceHandle objectInstanceHandle, - ObjectClassHandle objectClassHandle, - String name, - FederateAmbassador federateAmbassador) - { - objectLock.readLock().lock(); - try - { - federateAmbassador.discoverObjectInstance( - objectInstanceHandle, objectClassHandle, name); - } - catch (Throwable t) - { - log.warn(String.format( - "federate unable to discover object instance: %s", - objectInstanceHandle), t); - } - finally - { - objectLock.readLock().unlock(); - } - } - - public void reflectAttributeValues( - ObjectInstanceHandle objectInstanceHandle, - AttributeHandleValueMap attributeValues, byte[] tag, - OrderType sentOrderType, TransportationType transportationType, - LogicalTime updateTime, OrderType receivedOrderType, - MessageRetractionHandle messageRetractionHandle, - RegionHandleSet sentRegionHandles, FederateAmbassador federateAmbassador) - { - objectLock.readLock().lock(); - try - { - if (updateTime == null) - { - if (sentRegionHandles == null) - { - federateAmbassador.reflectAttributeValues( - objectInstanceHandle, attributeValues, tag, sentOrderType, - transportationType); - } - else - { - federateAmbassador.reflectAttributeValues( - objectInstanceHandle, attributeValues, tag, sentOrderType, - transportationType, sentRegionHandles); - } - } - else if (messageRetractionHandle == null) - { - if (sentRegionHandles == null) - { - federateAmbassador.reflectAttributeValues( - objectInstanceHandle, attributeValues, tag, sentOrderType, - transportationType, updateTime, receivedOrderType); - } - else - { - federateAmbassador.reflectAttributeValues( - objectInstanceHandle, attributeValues, tag, sentOrderType, - transportationType, updateTime, receivedOrderType, sentRegionHandles); - } - } - else if (sentRegionHandles == null) - { - federateAmbassador.reflectAttributeValues( - objectInstanceHandle, attributeValues, tag, sentOrderType, - transportationType, updateTime, receivedOrderType, - messageRetractionHandle); - } - else - { - federateAmbassador.reflectAttributeValues( - objectInstanceHandle, attributeValues, tag, sentOrderType, - transportationType, updateTime, receivedOrderType, - messageRetractionHandle, sentRegionHandles); - } - } - catch (Throwable t) - { - log.warn(String.format( - "federate could not reflect attributes: %s", objectInstanceHandle), t); - } - finally - { - objectLock.readLock().unlock(); - } - } - - public void removeObjectInstance( - ObjectInstanceHandle objectInstanceHandle, byte[] tag, - OrderType sentOrderType, LogicalTime deleteTime, - OrderType receivedOrderType, - MessageRetractionHandle messageRetractionHandle, - FederateAmbassador federateAmbassador) - { - objectLock.readLock().lock(); - try - { - Attribute attribute = objectClass.getAttributesByName().get( - Attribute.HLA_PRIVILEGE_TO_DELETE_OBJECT); - assert attribute != null; - if (!attributes.containsKey(attribute.getAttributeHandle())) - { - if (deleteTime == null) - { - federateAmbassador.removeObjectInstance( - objectInstanceHandle, tag, sentOrderType); - } - else if (messageRetractionHandle == null) - { - federateAmbassador.removeObjectInstance( - objectInstanceHandle, tag, sentOrderType, deleteTime, - receivedOrderType); - } - else - { - federateAmbassador.removeObjectInstance( - objectInstanceHandle, tag, sentOrderType, deleteTime, - receivedOrderType, messageRetractionHandle); - } - } - } - catch (Throwable t) - { - log.warn(String.format( - "federate unable to remove object instance: %s", - objectInstanceHandle), t); - } - finally - { - objectLock.readLock().unlock(); - } - } - - public void attributeOwnershipAcquisitionNotification( - AttributeHandleSet attributeHandles, byte[] tag, - FederateAmbassador federateAmbassador) - { - objectLock.writeLock().lock(); - try - { - attributeHandlesBeingAcquired.removeAll(attributeHandles); - - for (AttributeHandle attributeHandle : attributeHandles) - { - Attribute attribute = objectClass.getAttributes().get(attributeHandle); - assert attribute != null; - - // create an attribute instance for each of the published attributes - // - attributes.put(attributeHandle, new AttributeInstance(attribute)); - } - - federateAmbassador.attributeOwnershipAcquisitionNotification( - objectInstanceHandle, attributeHandles, tag); - } - catch (Throwable t) - { - log.warn(String.format( - "federate unable to acquire object instance attributes: %s - %s", - objectInstanceHandle, attributeHandles), t); - } - finally - { - objectLock.writeLock().unlock(); - } - } -} Copied: trunk/rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectInstance.java (from rev 72, trunk/rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectInstance.java) =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectInstance.java (rev 0) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectInstance.java 2006-12-16 03:12:41 UTC (rev 79) @@ -0,0 +1,1125 @@ +/* + * Copyright (c) 2006, Michael Newcomb +... [truncated message content] |
From: <mne...@us...> - 2006-12-21 19:25:58
|
Revision: 83 http://svn.sourceforge.net/ohla/?rev=83&view=rev Author: mnewcomb Date: 2006-12-21 11:25:58 -0800 (Thu, 21 Dec 2006) Log Message: ----------- roll back again, changing course Modified Paths: -------------- trunk/build/intellij/OHLA.iws trunk/rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java Added Paths: ----------- trunk/rti/src/java/net/sf/ohla/rti1516/federation/ownership/ trunk/rti/src/java/net/sf/ohla/rti1516/federation/ownership/AttributeInstanceOwnership.java trunk/rti/src/java/net/sf/ohla/rti1516/federation/ownership/ObjectInstanceOwnership.java trunk/rti/src/java/net/sf/ohla/rti1516/federation/ownership/OwnershipManager.java Removed Paths: ------------- trunk/rti/src/java/net/sf/ohla/rti1516/federation/objects/ trunk/rti/src/java/net/sf/ohla/rti1516/federation/ownership/AttributeInstanceOwnership.java trunk/rti/src/java/net/sf/ohla/rti1516/federation/ownership/ObjectInstanceOwnership.java trunk/rti/src/java/net/sf/ohla/rti1516/federation/ownership/OwnershipManager.java Modified: trunk/build/intellij/OHLA.iws =================================================================== --- trunk/build/intellij/OHLA.iws 2006-12-21 19:19:58 UTC (rev 82) +++ trunk/build/intellij/OHLA.iws 2006-12-21 19:25:58 UTC (rev 83) @@ -85,21 +85,6 @@ <disable_hints /> </component> <component name="DebuggerManager"> - <line_breakpoints> - <breakpoint url="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectInstance.java" line="163" class="net.sf.ohla.rti1516.federate.objects.ObjectInstance" package="net.sf.ohla.rti1516.federate.objects"> - <option name="ENABLED" value="true" /> - <option name="SUSPEND_POLICY" value="SuspendAll" /> - <option name="LOG_ENABLED" value="false" /> - <option name="LOG_EXPRESSION_ENABLED" value="false" /> - <option name="COUNT_FILTER_ENABLED" value="false" /> - <option name="COUNT_FILTER" value="0" /> - <option name="CONDITION_ENABLED" value="false" /> - <option name="CLASS_FILTERS_ENABLED" value="false" /> - <option name="INSTANCE_FILTERS_ENABLED" value="false" /> - <option name="CONDITION" value="" /> - <option name="LOG_MESSAGE" value="" /> - </breakpoint> - </line_breakpoints> <breakpoint_any> <breakpoint> <option name="NOTIFY_CAUGHT" value="true" /> @@ -183,7 +168,58 @@ <option name="myCurrentFavoritesList" value="OHLA" /> </component> <component name="FileEditorManager"> - <leaf /> + <leaf> + <file leaf-file-name="FederationExecution.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java"> + <provider selected="true" editor-type-id="text-editor"> + <state line="403" column="0" selection-start="14488" selection-end="14488" vertical-scroll-proportion="0.021197008"> + <folding /> + </state> + </provider> + </entry> + </file> + <file leaf-file-name="ObjectInstance.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/objects/ObjectInstance.java"> + <provider selected="true" editor-type-id="text-editor"> + <state line="47" column="13" selection-start="1932" selection-end="1932" vertical-scroll-proportion="0.021197008"> + <folding> + <element signature="imports" expanded="true" /> + <marker date="1166728743453" expanded="true" signature="13916:13936" placeholder="{...}" /> + </folding> + </state> + </provider> + </entry> + </file> + <file leaf-file-name="ObjectManager.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/objects/ObjectManager.java"> + <provider selected="true" editor-type-id="text-editor"> + <state line="74" column="14" selection-start="2434" selection-end="2434" vertical-scroll-proportion="0.70746636"> + <folding> + <marker date="1166728740359" expanded="true" signature="2068:2178" placeholder="{...}" /> + </folding> + </state> + </provider> + </entry> + </file> + <file leaf-file-name="AttributeInstance.java" pinned="false" current="true" current-in-tab="true"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/objects/AttributeInstance.java"> + <provider selected="true" editor-type-id="text-editor"> + <state line="18" column="0" selection-start="655" selection-end="655" vertical-scroll-proportion="0.08323134"> + <folding /> + </state> + </provider> + </entry> + </file> + <file leaf-file-name="AttributeInstance.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/objects/AttributeInstance.java"> + <provider selected="true" editor-type-id="text-editor"> + <state line="30" column="13" selection-start="1035" selection-end="1035" vertical-scroll-proportion="0.124847"> + <folding /> + </state> + </provider> + </entry> + </file> + </leaf> </component> <component name="FindManager"> <FindUsagesManager> @@ -308,7 +344,7 @@ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> </PATH_ELEMENT> <PATH_ELEMENT> - <option name="myItemId" value="OHLA" /> + <option name="myItemId" value="RTI" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> </PATH_ELEMENT> </PATH> @@ -318,13 +354,29 @@ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> </PATH_ELEMENT> <PATH_ELEMENT> - <option name="myItemId" value="OHLA" /> + <option name="myItemId" value="RTI" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> </PATH_ELEMENT> <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4" /> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla\rti1516" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> </PATH> <PATH> <PATH_ELEMENT> @@ -332,17 +384,33 @@ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> </PATH_ELEMENT> <PATH_ELEMENT> - <option name="myItemId" value="OHLA" /> + <option name="myItemId" value="RTI" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> </PATH_ELEMENT> <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4" /> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> </PATH_ELEMENT> <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\build" /> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla\rti1516" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla\rti1516\federation" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> </PATH> <PATH> <PATH_ELEMENT> @@ -350,22 +418,158 @@ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> </PATH_ELEMENT> <PATH_ELEMENT> - <option name="myItemId" value="OHLA" /> + <option name="myItemId" value="RTI" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> </PATH_ELEMENT> <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4" /> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> </PATH_ELEMENT> <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\build" /> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> </PATH_ELEMENT> <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\build\intellij" /> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla\rti1516" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla\rti1516\federation" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla\rti1516\federation\objects" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> </PATH> + <PATH> + <PATH_ELEMENT> + <option name="myItemId" value="OHLA.ipr" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="RTI" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla\rti1516" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla\rti1516\federate" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + </PATH> + <PATH> + <PATH_ELEMENT> + <option name="myItemId" value="OHLA.ipr" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="RTI" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla\rti1516" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla\rti1516\federate" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla\rti1516\federate\objects" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + </PATH> + <PATH> + <PATH_ELEMENT> + <option name="myItemId" value="OHLA.ipr" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="RTI" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + </PATH> + <PATH> + <PATH_ELEMENT> + <option name="myItemId" value="OHLA.ipr" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="RTI" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + </PATH> </component> <component name="ProjectReloadState"> <option name="STATE" value="0" /> @@ -378,7 +582,7 @@ <showLibraryContents /> <hideEmptyPackages ProjectPane="true" /> <abbreviatePackageNames /> - <showStructure PackagesPane="false" Favorites="false" ProjectPane="false" Scope="false" /> + <showStructure PackagesPane="false" ProjectPane="false" Favorites="false" Scope="false" /> <autoscrollToSource /> <autoscrollFromSource /> <sortByType /> @@ -397,8 +601,8 @@ <property name="cvs_file_history_flatOrder1" value="1" /> <property name="cvs_file_history_flatWidth1" value="299" /> <property name="cvs_file_history_treeWidth1" value="299" /> + <property name="cvs_file_history_treeOrder2" value="2" /> <property name="cvs_file_history_treeWidth3" value="298" /> - <property name="cvs_file_history_treeOrder2" value="2" /> <property name="GoToClass.includeLibraries" value="false" /> <property name="cvs_file_history_flatOrder2" value="2" /> <property name="MemberChooser.showClasses" value="true" /> @@ -407,8 +611,8 @@ <property name="cvs_file_history_treeWidth2" value="299" /> <property name="cvs_file_history_flatOrder3" value="3" /> <property name="GoToClass.toSaveIncludeLibraries" value="false" /> + <property name="RunManagerConfig.showSettingsBeforeRunnig" value="true" /> <property name="cvs_file_history_treeOrder0" value="0" /> - <property name="RunManagerConfig.showSettingsBeforeRunnig" value="true" /> </component> <component name="ReadonlyStatusHandler"> <option name="SHOW_DIALOG" value="true" /> @@ -425,17 +629,12 @@ <component name="RestoreUpdateTree" /> <component name="RunManager"> <activeType name="Application" /> - <configuration selected="false" default="true" type="Applet" factoryName="Applet"> - <module name="" /> - <option name="MAIN_CLASS_NAME" /> - <option name="HTML_FILE_NAME" /> - <option name="HTML_USED" value="false" /> - <option name="WIDTH" value="400" /> - <option name="HEIGHT" value="300" /> - <option name="POLICY_FILE" value="$APPLICATION_HOME_DIR$/bin/appletviewer.policy" /> - <option name="VM_PARAMETERS" /> - <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" /> - <option name="ALTERNATIVE_JRE_PATH" /> + <configuration selected="false" default="true" type="Remote" factoryName="Remote"> + <option name="USE_SOCKET_TRANSPORT" value="true" /> + <option name="SERVER_MODE" value="false" /> + <option name="SHMEM_ADDRESS" value="javadebug" /> + <option name="HOST" value="localhost" /> + <option name="PORT" value="5005" /> </configuration> <configuration selected="false" default="true" type="JUnit" factoryName="JUnit"> <module name="" /> @@ -453,6 +652,18 @@ <value defaultName="wholeProject" /> </option> </configuration> + <configuration selected="false" default="true" type="Applet" factoryName="Applet"> + <module name="" /> + <option name="MAIN_CLASS_NAME" /> + <option name="HTML_FILE_NAME" /> + <option name="HTML_USED" value="false" /> + <option name="WIDTH" value="400" /> + <option name="HEIGHT" value="300" /> + <option name="POLICY_FILE" value="$APPLICATION_HOME_DIR$/bin/appletviewer.policy" /> + <option name="VM_PARAMETERS" /> + <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" /> + <option name="ALTERNATIVE_JRE_PATH" /> + </configuration> <configuration selected="false" default="true" type="TestNG" factoryName="TestNG"> <module name="" /> <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" /> @@ -473,13 +684,6 @@ <option name="PROPERTIES_FILE" /> <properties /> </configuration> - <configuration selected="false" default="true" type="Remote" factoryName="Remote"> - <option name="USE_SOCKET_TRANSPORT" value="true" /> - <option name="SERVER_MODE" value="false" /> - <option name="SHMEM_ADDRESS" value="javadebug" /> - <option name="HOST" value="localhost" /> - <option name="PORT" value="5005" /> - </configuration> <configuration selected="false" default="true" type="Application" factoryName="Application"> <option name="MAIN_CLASS_NAME" /> <option name="VM_PARAMETERS" /> @@ -508,14 +712,14 @@ </option> <option name="PROPERTIES_FILE" value="" /> <properties /> - <RunnerSettings RunnerId="Run" /> <RunnerSettings RunnerId="Debug"> <option name="DEBUG_PORT" value="2019" /> <option name="TRANSPORT" value="0" /> <option name="LOCAL" value="true" /> </RunnerSettings> + <RunnerSettings RunnerId="Run" /> + <ConfigurationWrapper RunnerId="Debug" /> <ConfigurationWrapper RunnerId="Run" /> - <ConfigurationWrapper RunnerId="Debug" /> </configuration> <configuration selected="true" default="false" name="HLA 1.3 Testsuite" type="TestNG" factoryName="TestNG"> <module name="RTI" /> @@ -545,14 +749,14 @@ <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" /> <option name="ALTERNATIVE_JRE_PATH" value="" /> <module name="RTI" /> - <RunnerSettings RunnerId="Run" /> <RunnerSettings RunnerId="Debug"> <option name="DEBUG_PORT" value="2738" /> <option name="TRANSPORT" value="0" /> <option name="LOCAL" value="true" /> </RunnerSettings> + <RunnerSettings RunnerId="Run" /> + <ConfigurationWrapper RunnerId="Debug" /> <ConfigurationWrapper RunnerId="Run" /> - <ConfigurationWrapper RunnerId="Debug" /> </configuration> </component> <component name="ScopeViewComponent"> @@ -624,12 +828,12 @@ </todo-panel> </component> <component name="ToolWindowManager"> - <frame x="-9" y="-2" width="1288" height="998" extended-state="0" /> - <editor active="false" /> + <frame x="-4" y="-4" width="1288" height="998" extended-state="6" /> + <editor active="true" /> <layout> <window_info id="CVS" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="8" /> <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.32791588" order="7" /> - <window_info id="Project" active="true" anchor="left" auto_hide="false" internal_type="docked" type="docked" visible="true" weight="0.21278317" order="0" /> + <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="docked" type="docked" visible="true" weight="0.3802589" order="0" /> <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.34367815" order="1" /> <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="1" /> <window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.32413793" order="8" /> @@ -639,7 +843,7 @@ <window_info id="Dependency Viewer" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.32988507" order="8" /> <window_info id="Metrics" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="8" /> <window_info id="Favorites" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.32928804" order="3" /> - <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="true" weight="0.1553398" order="1" /> + <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.1553398" order="1" /> <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.27816093" order="2" /> <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="2" /> <window_info id="File View" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="3" /> @@ -682,7 +886,7 @@ <option name="CHECK_CODE_SMELLS_BEFORE_PROJECT_COMMIT" value="true" /> <option name="PUT_FOCUS_INTO_COMMENT" value="false" /> <option name="FORCE_NON_EMPTY_COMMENT" value="false" /> - <option name="LAST_COMMIT_MESSAGE" value="renamed some variables" /> + <option name="LAST_COMMIT_MESSAGE" value="more refactoring in preparation of moving to centralized RTI" /> <option name="SAVE_LAST_COMMIT_MESSAGE" value="true" /> <option name="CHECKIN_DIALOG_SPLITTER_PROPORTION" value="0.8" /> <option name="OPTIMIZE_IMPORTS_BEFORE_PROJECT_COMMIT" value="false" /> @@ -696,7 +900,6 @@ <option name="UPDATE_GROUP_BY_PACKAGES" value="false" /> <option name="SHOW_FILE_HISTORY_AS_TREE" value="false" /> <option name="FILE_HISTORY_SPLITTER_PROPORTION" value="0.6" /> - <MESSAGE value="fixed incorrect compareTo methods and added @Override tags" /> <MESSAGE value="added target to create javadocs" /> <MESSAGE value="spec says that if no synchronization set is supplied OR it is empty, than all joined federates are part of the synchronization set" /> <MESSAGE value="adding documentation" /> @@ -705,6 +908,8 @@ <MESSAGE value="- added synchronization point tests to HLA 1.3 testsuite - removed some unused constants from TestConstants" /> <MESSAGE value="more synchronization point test cases" /> <MESSAGE value="renamed some variables" /> + <MESSAGE value="refactoring in preparation of moving to centralized RTI" /> + <MESSAGE value="more refactoring in preparation of moving to centralized RTI" /> </component> <component name="VssConfiguration"> <option name="CLIENT_PATH" value="" /> @@ -785,111 +990,116 @@ <option name="myLastEditedConfigurable" /> </component> <component name="editorHistoryManager"> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/messages/FederateSaveInitiated.java"> + <entry file="file://$PROJECT_DIR$/../../hla-1.3/src/java/hla/rti/FederateAmbassador.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="32" column="34" selection-start="955" selection-end="955" vertical-scroll-proportion="0.51224107"> + <state line="61" column="45" selection-start="1973" selection-end="1973" vertical-scroll-proportion="0.2685069"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/filter/InterestManagementFilter.java"> + <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="243" column="37" selection-start="8806" selection-end="8806" vertical-scroll-proportion="0.56092435"> + <state line="295" column="12" selection-start="10776" selection-end="10776" vertical-scroll-proportion="0.3412798"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/callbacks/ReflectAttributeValues.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateSave.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="48" column="15" selection-start="1750" selection-end="1750" vertical-scroll-proportion="0.5988258"> + <state line="48" column="3" selection-start="1321" selection-end="1321" vertical-scroll-proportion="0.45294857"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../ieee-1516/src/java/hla/rti1516/jlc/NullFederateAmbassador.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/SubscriptionManager.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="76" column="0" selection-start="2635" selection-end="2635" vertical-scroll-proportion="0.33291772"> + <state line="230" column="21" selection-start="7508" selection-end="7508" vertical-scroll-proportion="0.21867007"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../ieee-1516/src/java/hla/rti1516/FederateAmbassador.java"> - <provider selected="true" editor-type-id="text-editor"> - <state line="40" column="60" selection-start="1623" selection-end="1623" vertical-scroll-proportion="0.33291772"> - <folding /> - </state> - </provider> - </entry> <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/Federate.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="498" column="42" selection-start="20308" selection-end="20308" vertical-scroll-proportion="0.3414322"> + <state line="242" column="13" selection-start="11390" selection-end="11390" vertical-scroll-proportion="0.33333334"> <folding> <element signature="imports" expanded="true" /> </folding> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../hla-1.3/src/java/hla/rti/ReflectedAttributes.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/fdd/FDD.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="2" column="17" selection-start="35" selection-end="35" vertical-scroll-proportion="0.042659976"> + <state line="679" column="49" selection-start="19954" selection-end="19954" vertical-scroll-proportion="0.10922787"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../hla-1.3/src/java/hla/rti/RTIambassador.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/fdd/Attribute.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="42" column="0" selection-start="1835" selection-end="1835" vertical-scroll-proportion="0.3412798"> + <state line="37" column="37" selection-start="1109" selection-end="1109" vertical-scroll-proportion="-0.2881356"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti/OHLARTIambassador.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/fdd/ObjectClass.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="341" column="12" selection-start="11764" selection-end="11764" vertical-scroll-proportion="0.9066496"> + <state line="36" column="13" selection-start="1089" selection-end="1089" vertical-scroll-proportion="-2.5932202"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../hla-1.3/src/java/hla/rti/FederateAmbassador.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectInstance.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="61" column="45" selection-start="1973" selection-end="1973" vertical-scroll-proportion="0.2685069"> + <state line="76" column="0" selection-start="3199" selection-end="3199" vertical-scroll-proportion="-1.60454"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectManager.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="295" column="12" selection-start="10776" selection-end="10776" vertical-scroll-proportion="0.3412798"> - <folding /> + <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="-1.3990026"> + <folding> + <element signature="imports" expanded="true" /> + </folding> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateSave.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="48" column="3" selection-start="1321" selection-end="1321" vertical-scroll-proportion="0.45294857"> + <state line="403" column="0" selection-start="14488" selection-end="14488" vertical-scroll-proportion="0.021197008"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectManager.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/objects/ObjectInstance.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="966" column="14" selection-start="28910" selection-end="28910" vertical-scroll-proportion="0.58056265"> + <state line="47" column="13" selection-start="1932" selection-end="1932" vertical-scroll-proportion="0.021197008"> <folding> <element signature="imports" expanded="true" /> + <marker date="1166728743453" expanded="true" signature="13916:13936" placeholder="{...}" /> </folding> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectInstance.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/objects/ObjectManager.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="77" column="13" selection-start="3213" selection-end="3213" vertical-scroll-proportion="0.13043478"> + <state line="74" column="14" selection-start="2434" selection-end="2434" vertical-scroll-proportion="0.70746636"> + <folding> + <marker date="1166728740359" expanded="true" signature="2068:2178" placeholder="{...}" /> + </folding> + </state> + </provider> + </entry> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/objects/AttributeInstance.java"> + <provider selected="true" editor-type-id="text-editor"> + <state line="30" column="13" selection-start="1035" selection-end="1035" vertical-scroll-proportion="0.124847"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/SubscriptionManager.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/objects/AttributeInstance.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="230" column="21" selection-start="7508" selection-end="7508" vertical-scroll-proportion="0.21867007"> + <state line="18" column="0" selection-start="655" selection-end="655" vertical-scroll-proportion="0.08323134"> <folding /> </state> </provider> Modified: trunk/rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java 2006-12-21 19:19:58 UTC (rev 82) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java 2006-12-21 19:25:58 UTC (rev 83) @@ -35,7 +35,7 @@ import net.sf.ohla.rti1516.federate.callbacks.FederationSynchronized; import net.sf.ohla.rti1516.federate.callbacks.InitiateFederateSave; import net.sf.ohla.rti1516.federate.callbacks.RemoveObjectInstance; -import net.sf.ohla.rti1516.federation.objects.ObjectManager; +import net.sf.ohla.rti1516.federation.ownership.OwnershipManager; import net.sf.ohla.rti1516.federation.time.TimeKeeper; import net.sf.ohla.rti1516.messages.AttributeOwnershipAcquisition; import net.sf.ohla.rti1516.messages.AttributeOwnershipAcquisitionIfAvailable; @@ -140,7 +140,7 @@ protected Map<RegionHandle, Map<DimensionHandle, RangeBounds>> regions = new HashMap<RegionHandle, Map<DimensionHandle, RangeBounds>>(); - protected ObjectManager objectManager = new ObjectManager(this); + protected OwnershipManager ownershipManager = new OwnershipManager(this); protected TimeKeeper timeKeeper; @@ -401,7 +401,7 @@ session.write(new RequestResponse( registerObjectInstance.getId(), objectInstanceRegistered)); - objectManager.registerObjectInstance( + ownershipManager.registerObjectInstance( objectInstanceHandle, objectClass, registerObjectInstance.getPublishedAttributeHandles(), getFederateHandle(session)); @@ -530,7 +530,7 @@ subscribeObjectClassAttributes.getObjectClassHandle()); assert objectClass != null; - objectManager.subscribeObjectClassAttributes( + ownershipManager.subscribeObjectClassAttributes( objectClass, subscribeObjectClassAttributes.getAttributeHandles(), subscribeObjectClassAttributes.getAttributesAndRegions(), session); } @@ -1060,7 +1060,7 @@ federationExecutionStateLock.readLock().lock(); try { - objectManager.unconditionalAttributeOwnershipDivestiture( + ownershipManager.unconditionalAttributeOwnershipDivestiture( unconditionalAttributeOwnershipDivestiture.getObjectInstanceHandle(), unconditionalAttributeOwnershipDivestiture.getAttributeHandles()); } @@ -1077,7 +1077,7 @@ federationExecutionStateLock.readLock().lock(); try { - objectManager.negotiatedAttributeOwnershipDivestiture( + ownershipManager.negotiatedAttributeOwnershipDivestiture( negotiatedAttributeOwnershipDivestiture.getObjectInstanceHandle(), negotiatedAttributeOwnershipDivestiture.getAttributeHandles(), negotiatedAttributeOwnershipDivestiture.getTag(), session); @@ -1094,7 +1094,7 @@ federationExecutionStateLock.readLock().lock(); try { - objectManager.confirmDivestiture( + ownershipManager.confirmDivestiture( confirmDivestiture.getObjectInstanceHandle(), confirmDivestiture.getAttributeHandles()); } @@ -1111,7 +1111,7 @@ federationExecutionStateLock.readLock().lock(); try { - objectManager.attributeOwnershipAcquisition( + ownershipManager.attributeOwnershipAcquisition( attributeOwnershipAcquisition.getObjectInstanceHandle(), attributeOwnershipAcquisition.getAttributeHandles(), attributeOwnershipAcquisition.getTag(), getFederateHandle(session), @@ -1130,7 +1130,7 @@ federationExecutionStateLock.readLock().lock(); try { - objectManager.attributeOwnershipAcquisitionIfAvailable( + ownershipManager.attributeOwnershipAcquisitionIfAvailable( attributeOwnershipAcquisitionIfAvailable.getObjectInstanceHandle(), attributeOwnershipAcquisitionIfAvailable.getAttributeHandles(), getFederateHandle(session), session); @@ -1149,7 +1149,7 @@ try { Map<AttributeHandle, FederateHandle> newOwners = - objectManager.attributeOwnershipDivestitureIfWanted( + ownershipManager.attributeOwnershipDivestitureIfWanted( attributeOwnershipDivestitureIfWanted.getObjectInstanceHandle(), attributeOwnershipDivestitureIfWanted.getAttributeHandles()); @@ -1235,7 +1235,7 @@ federationExecutionStateLock.readLock().lock(); try { - objectManager.cancelNegotiatedAttributeOwnershipDivestiture( + ownershipManager.cancelNegotiatedAttributeOwnershipDivestiture( cancelNegotiatedAttributeOwnershipDivestiture.getObjectInstanceHandle(), cancelNegotiatedAttributeOwnershipDivestiture.getAttributeHandles(), getFederateHandle(session)); @@ -1253,7 +1253,7 @@ federationExecutionStateLock.readLock().lock(); try { - objectManager.cancelAttributeOwnershipAcquisition( + ownershipManager.cancelAttributeOwnershipAcquisition( cancelAttributeOwnershipAcquisition.getObjectInstanceHandle(), cancelAttributeOwnershipAcquisition.getAttributeHandles(), getFederateHandle(session), session); @@ -1270,7 +1270,7 @@ federationExecutionStateLock.readLock().lock(); try { - objectManager.queryAttributeOwnership( + ownershipManager.queryAttributeOwnership( queryAttributeOwnership.getObjectInstanceHandle(), queryAttributeOwnership.getAttributeHandle(), session); } Copied: trunk/rti/src/java/net/sf/ohla/rti1516/federation/ownership (from rev 79, trunk/rti/src/java/net/sf/ohla/rti1516/federation/ownership) Deleted: trunk/rti/src/java/net/sf/ohla/rti1516/federation/ownership/AttributeInstanceOwnership.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federation/ownership/AttributeInstanceOwnership.java 2006-12-16 03:12:41 UTC (rev 79) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federation/ownership/AttributeInstanceOwnership.java 2006-12-21 19:25:58 UTC (rev 83) @@ -1,167 +0,0 @@ -/* - * Copyright (c) 2006, Michael Newcomb - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package net.sf.ohla.rti1516.federation.ownership; - -import java.util.Iterator; -import java.util.LinkedHashSet; - -import net.sf.ohla.rti1516.fdd.Attribute; - -import hla.rti1516.FederateHandle; - -public class AttributeInstanceOwnership -{ - protected final Attribute attribute; - - protected FederateHandle owner; - - /** - * Set if the owner of this attribute is willing to divest ownership. - */ - protected boolean wantsToDivest; - - /** - * The 'ownership' line. When federates request ownership of this attribute - * they are placed into a line and given ownership based upon when they - * entered the line. - */ - protected LinkedHashSet<FederateHandle> requestingOwnership = - new LinkedHashSet<FederateHandle>(); - - public AttributeInstanceOwnership(Attribute attribute) - { - this.attribute = attribute; - } - - public Attribute getAttribute() - { - return attribute; - } - - public FederateHandle getOwner() - { - return owner; - } - - public void setOwner(FederateHandle owner) - { - this.owner = owner; - } - - public boolean wantsToDivest() - { - return wantsToDivest; - } - - public FederateHandle unconditionalAttributeOwnershipDivestiture() - { - owner = null; - wantsToDivest = false; - - // give ownership to the next in line - // - if (!requestingOwnership.isEmpty()) - { - Iterator<FederateHandle> i = requestingOwnership.iterator(); - owner = i.next(); - i.remove(); - } - - return owner; - } - - public boolean negotiatedAttributeOwnershipDivestiture(byte[] tag) - { - wantsToDivest = true; - - return !requestingOwnership.isEmpty(); - } - - public FederateHandle confirmDivestiture() - { - owner = null; - wantsToDivest = false; - - // give ownership to the next in line - // - if (!requestingOwnership.isEmpty()) - { - Iterator<FederateHandle> i = requestingOwnership.iterator(); - owner = i.next(); - i.remove(); - } - - return owner; - } - - public FederateHandle attributeOwnershipAcquisition(FederateHandle acquiree) - { - if (!attributeOwnershipAcquisitionIfAvailable(acquiree)) - { - // get in line - // - requestingOwnership.add(acquiree); - } - - return owner; - } - - public boolean attributeOwnershipAcquisitionIfAvailable( - FederateHandle acquiree) - { - if (owner == null) - { - // acquire this attribute if it is unowned - // - owner = acquiree; - wantsToDivest = false; - } - return owner == acquiree; - } - - public FederateHandle attributeOwnershipDivestitureIfWanted() - { - boolean divested = !requestingOwnership.isEmpty(); - - // give ownership to the next in line - // - if (divested) - { - Iterator<FederateHandle> i = requestingOwnership.iterator(); - owner = i.next(); - i.remove(); - - wantsToDivest = false; - } - - return divested ? owner : null; - } - - public boolean cancelAttributeOwnershipAcquisition(FederateHandle acquiree) - { - return requestingOwnership.remove(acquiree); - } - - public void cancelNegotiatedAttributeOwnershipDivestiture( - FederateHandle owner) - { - if (owner.equals(this.owner)) - { - wantsToDivest = false; - } - } -} Copied: trunk/rti/src/java/net/sf/ohla/rti1516/federation/ownership/AttributeInstanceOwnership.java (from rev 79, trunk/rti/src/java/net/sf/ohla/rti1516/federation/ownership/AttributeInstanceOwnership.java) =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federation/ownership/AttributeInstanceOwnership.java (rev 0) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federation/ownership/AttributeInstanceOwnership.java 2006-12-21 19:25:58 UTC (rev 83) @@ -0,0 +1,167 @@ +/* + * Copyright (c) 2006, Michael Newcomb + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.sf.ohla.rti1516.federation.ownership; + +import java.util.Iterator; +import java.util.LinkedHashSet; + +import net.sf.ohla.rti1516.fdd.Attribute; + +import hla.rti1516.FederateHandle; + +public class AttributeInstanceOwnership +{ + protected final Attribute attribute; + + protected FederateHandle owner; + + /** + * Set if the owner of this attribute is willing to divest ownership. + */ + protected boolean wantsToDivest; + + /** + * The 'ownership' line. When federates request ownership of this attribute + * they are placed into a line and given ownership based upon when they + * entered the line. + */ + protected LinkedHashSet<FederateHandle> requestingOwnership = + new LinkedHashSet<FederateHandle>(); + + public AttributeInstanceOwnership(Attribute attribute) + { + this.attribute = attribute; + } + + public Attribute getAttribute() + { + return attribute; + } + + public FederateHandle getOwner() + { + return owner; + } + + public void setOwner(FederateHandle owner) + { + this.owner = owner; + } + + public boolean wantsToDivest() + { + return wantsToDivest; + } + + public FederateHandle unconditionalAttributeOwnershipDivestiture() + { + owner = null; + wantsToDivest = false; + + // give ownership to the next in line + // + if (!requestingOwnership.isEmpty()) + { + Iterator<FederateHandle> i = requestingOwnership.iterator(); + owner = i.next(); + i.remove(); + } + + return owner; + } + + public boolean negotiatedAttributeOwnershipDivestiture(byte[] tag) + { + wantsToDivest = true; + + return !requestingOwnership.isEmpty(); + } + + public FederateHandle confirmDivestiture() + { + owner = null; + wantsToDivest = false; + + // give ownership to the next in line + // + if (!requestingOwnership.isEmpty()) + { + Iterator<FederateHandle> i = requestingOwnership.iterator(); + owner = i.next(); + i.remove(); + } + + return owner; + } + + public FederateHandle attributeOwnershipAcquisition(FederateHandle acquiree) + { + if (!attributeOwnershipAcquisitionIfAvailable(acquiree)) + { + // get in line + // + requestingOwnership.add(acquiree); + } + + return owner; + } + + public boolean attributeOwnershipAcquisitionIfAvailable( + FederateHandle acquiree) + { + if (owner == null) + { + // acquire this attribute if it is unowned + // + owner = acquiree; + wantsToDivest = false; + } + return owner == acquiree; + } + + public FederateHandle attributeOwnershipDivestitureIfWanted() + { + boolean divested = !requestingOwnership.isEmpty(); + + // give ownership to the next in line + // + if (divested) + { + Iterator<FederateHandle> i = requestingOwnership.iterator(); + owner = i.next(); + i.remove(); + + wantsToDivest = false; + } + + return divested ? owner : null; + } + + public boolean cancelAttributeOwnershipAcquisition(FederateHandle acquiree) + { + return requestingOwnership.remove(acquiree); + } + + public void cancelNegotiatedAttributeOwnershipDivestiture( + FederateHandle owner) + { + if (owner.equals(this.owner)) + { + wantsToDivest = false; + } + } +} Deleted: trunk/rti/src/java/net/sf/ohla/rti1516/federation/ownership/ObjectInstanceOwnership.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federation/ownership/ObjectInstanceOwnership.java 2006-12-16 03:12:41 UTC (rev 79) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federation/ownership/ObjectInstanceOwnership.java 2006-12-21 19:25:58 UTC (rev 83) @@ -1,450 +0,0 @@ -/* - * Copyright (c) 2006, Michael Newcomb - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package net.sf.ohla.rti1516.federation.ownership; - -import java.util.HashMap; -import java.util.Map; -import java.util.Set; -import java.util.concurrent.locks.Lock; -import java.util.concurrent.locks.ReentrantLock; - -import net.sf.ohla.rti1516.fdd.ObjectClass; -import net.sf.ohla.rti1516.fdd.Attribute; -import net.sf.ohla.rti1516.federate.callbacks.AttributeOwnershipAcquisitionNotification; -import net.sf.ohla.rti1516.federate.callbacks.AttributeOwnershipUnavailable; -import net.sf.ohla.rti1516.federate.callbacks.ConfirmAttributeOwnershipAcquisitionCancellation; -import net.sf.ohla.rti1516.federate.callbacks.RequestAttributeOwnershipRelease; -import net.sf.ohla.rti1516.federate.callbacks.RequestDivestitureConfirmation; -import net.sf.ohla.rti1516.federate.callbacks.AttributeIsNotOwned; -import net.sf.ohla.rti1516.federate.callbacks.AttributeIsOwnedByRTI; -import net.sf.ohla.rti1516.federate.callbacks.InformAttributeOwnership; -import net.sf.ohla.rti1516.OHLAAttributeHandleSet; -import net.sf.ohla.rti1516.federation.FederationExecution; - -import org.apache.mina.common.IoSession; - -import hla.rti1516.AttributeHandle; -import hla.rti1516.AttributeHandleSet; -import hla.rti1516.FederateHandle; -import hla.rti1516.ObjectInstanceHandle; - -public class ObjectInstanceOwnership -{ - protected ObjectInstanceHandle objectInstanceHandle; - protected ObjectClass objectClass; - - protected Lock objectLock = new ReentrantLock(true); - - protected Map<AttributeHandle, AttributeInstanceOwnership> attributes = - new HashMap<AttributeHandle, AttributeInstanceOwnership>(); - - public ObjectInstanceOwnership(ObjectInstanceHandle objectInstanceHandle, - ObjectClass objectClass, - Set<AttributeHandle> publishedAttributeHandles, - FederateHandle owner) - { - this.objectInstanceHandle = objectInstanceHandle; - this.objectClass = objectClass; - - for (Attribute attribute : objectClass.getAttributes().values()) - { - AttributeInstanceOwnership attributeInstanceOwnership = - new AttributeInstanceOwnership(attribute); - attributes.put(attribute.getAttributeHandle(), - attributeInstanceOwnership); - - if (publishedAttributeHandles.contains(attribute.getAttributeHandle())) - { - attributeInstanceOwnership.setOwner(owner); - } - } - } - - public ObjectInstanceHandle getObjectInstanceHandle() - { - return objectInstanceHandle; - } - - public ObjectClass getObjectClass() - { - return objectClass; - } - - public FederateHandle getOwner(AttributeHandle attributeHandle) - { - return attributes.get(attributeHandle).getOwner(); - } - - public void unconditionalAttributeOwnershipDivestiture( - AttributeHandleSet attributeHandles, - FederationExecution federationExecution) - { - objectLock.lock(); - try - { - Map<FederateHandle, AttributeHandleSet> newOwners = - new HashMap<FederateHandle, AttributeHandleSet>(); - for (AttributeHandle attributeHandle : attributeHandles) - { - FederateHandle newOwner = - attributes.get( - attributeHandle).unconditionalAttributeOwnershipDivestiture(); - if (newOwner != null) - { - AttributeHandleSet acquiredAttributes = newOwners.get(newOwner); - if (acquiredAttributes == null) - { - acquiredAttributes = new OHLAAttributeHandleSet(); - newOwners.put(newOwner, acquiredAttributes); - } - acquiredAttributes.add(attributeHandle); - } - } - - // notify the new owners - // - for (Map.Entry<FederateHandle, AttributeHandleSet> entry : - newOwners.entrySet()) - { - IoSession ownerSession = - federationExecution.getFederateSession(entry.getKey()); - if (ownerSession != null) - { - ownerSession.write(new AttributeOwnershipAcquisitionNotification( - objectInstanceHandle, entry.getValue())); - } - } - } - finally - { - objectLock.unlock(); - } - } - - public void negotiatedAttributeOwnershipDivestiture( - AttributeHandleSet attributeHandles, byte[] tag, IoSession session) - { - objectLock.lock(); - try - { - AttributeHandleSet divestableAttributeHandles = - new OHLAAttributeHandleSet(); - for (AttributeHandle attributeHandle : attributeHandles) - { - if (attributes.get( - attributeHandle).negotiatedAttributeOwnershipDivestiture(tag)) - { - divestableAttributeHandles.add(attributeHandle); - } - } - - if (!divestableAttributeHandles.isEmpty()) - { - session.write(new RequestDivestitureConfirmation( - objectInstanceHandle, divestableAttributeHandles)); - } - } - finally - { - objectLock.unlock(); - } - } - - public void confirmDivestiture(AttributeHandleSet attributeHandles, - FederationExecution federationExecution) - { - objectLock.lock(); - try - { - Map<FederateHandle, AttributeHandleSet> newOwners = - new HashMap<FederateHandle, AttributeHandleSet>(); - for (AttributeHandle attributeHandle : attributeHandles) - { - FederateHandle newOwner = - attributes.get(attributeHandle).confirmDivestiture(); - if (newOwner != null) - { - AttributeHandleSet acquiredAttributes = newOwners.get(newOwner); - if (acquiredAttributes == null) - { - acquiredAttributes = new OHLAAttributeHandleSet(); - newOwners.put(newOwner, acquiredAttributes); - } - acquiredAttributes.add(attributeHandle); - System.out.printf("%s - %s\n", newOwner, acquiredAttributes); - } - } - - // notify the new owners - // - for (Map.Entry<... [truncated message content] |
From: <mne...@us...> - 2007-02-08 19:24:14
|
Revision: 104 http://svn.sourceforge.net/ohla/?rev=104&view=rev Author: mnewcomb Date: 2007-02-08 11:24:14 -0800 (Thu, 08 Feb 2007) Log Message: ----------- - all but 1 time management test passes Modified Paths: -------------- trunk/build/build.xml trunk/build/intellij/HLA 1.3.iml trunk/build/intellij/IEEE 1516.iml trunk/build/intellij/OHLA.iml trunk/build/intellij/OHLA.ipr trunk/build/intellij/OHLA.iws trunk/build/intellij/RTI.iml trunk/build/intellij/Testsuite.iml trunk/resources/testsuite/ieee-1516-testng.xml trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/time/TimeManager.java trunk/rti/src/java/net/sf/ohla/rti1516/federation/Federate.java trunk/rti/src/java/net/sf/ohla/rti1516/federation/time/TimeKeeper.java trunk/testsuite/src/java/net/sf/ohla/rti1516/FederationManagementTestNG.java trunk/testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java trunk/testsuite/src/java/net/sf/ohla/rti1516/OwnershipManagementTestNG.java trunk/testsuite/src/java/net/sf/ohla/rti1516/TimeManagementTestNG.java Added Paths: ----------- trunk/resources/logback-test.xml trunk/thirdparty/logback/ trunk/thirdparty/logback/LICENSE.txt trunk/thirdparty/logback/lib/ trunk/thirdparty/logback/lib/logback-classic-0.9.jar trunk/thirdparty/logback/lib/logback-core-0.9.jar Removed Paths: ------------- trunk/resources/properties/log4j.properties trunk/rti/src/java/net/sf/ohla/rti1516/federation/time/TimeConstrainedFederate.java trunk/rti/src/java/net/sf/ohla/rti1516/federation/time/TimeRegulatingFederate.java Modified: trunk/build/build.xml =================================================================== --- trunk/build/build.xml 2007-02-08 15:41:53 UTC (rev 103) +++ trunk/build/build.xml 2007-02-08 19:24:14 UTC (rev 104) @@ -41,14 +41,6 @@ <!-- Libraries --> <!-- ================================================================ --> - <!-- Log4J --> - <property name="apache.log4j.root" - location="${project.thirdparty}/apache/log4j"/> - <property name="apache.log4j.lib" location="${apache.log4j.root}/lib"/> - <path id="apache.log4j.classpath"> - <fileset dir="${apache.log4j.lib}" includes="*.jar"/> - </path> - <!-- MINA --> <property name="apache.mina.root" location="${project.thirdparty}/apache/mina"/> @@ -68,9 +60,16 @@ <property name="slf4j.root" location="${project.thirdparty}/slf4j"/> <property name="slf4j.lib" location="${slf4j.root}/lib"/> <path id="slf4j.classpath"> - <pathelement location="${slf4j.lib}/slf4j-log4j12.jar"/> + <fileset dir="${slf4j.lib}" includes="*.jar"/> </path> + <!-- Logback --> + <property name="logback.root" location="${project.thirdparty}/logback"/> + <property name="logback.lib" location="${logback.root}/lib"/> + <path id="logback.classpath"> + <fileset dir="${logback.lib}" includes="*.jar"/> + </path> + <!-- JavaCC --> <property name="javacc.root" location="${project.thirdparty}/javacc"/> <property name="javacc.bin" location="${javacc.root}/bin"/> @@ -85,9 +84,9 @@ <!-- The combined library classpath. --> <path id="library.classpath"> - <path refid="apache.log4j.classpath"/> <path refid="apache.mina.classpath"/> <path refid="slf4j.classpath"/> + <path refid="logback.classpath"/> <path refid="dom4j.classpath"/> </path> @@ -113,11 +112,7 @@ <!-- Initialization --> <!-- ================================================================== --> - <target name="init" depends=""> - <!-- The build id (when was this thing built). --> - <tstamp> - <format property="build.id" pattern="yyyyMMddHHmm"/> - </tstamp> + <target name="init"> </target> @@ -320,7 +315,7 @@ <pathelement location="${output.lib}/${ieee-1516.jar}"/> <pathelement location="${output.lib}/${rti.jar}"/> <pathelement location="${output}/testsuite/classes"/> - <pathelement location="${project.resources.properties}"/> + <pathelement location="${project.resources}"/> <pathelement location="${project.resources.testsuite}"/> </classpath> <xmlfileset dir="${project.resources.testsuite}" includes="ieee-1516-testng.xml"/> @@ -353,7 +348,7 @@ <pathelement location="${output.lib}/${ieee-1516.jar}"/> <pathelement location="${output.lib}/${rti.jar}"/> <pathelement location="${output}/testsuite/classes"/> - <pathelement location="${project.resources.properties}"/> + <pathelement location="${project.resources}"/> <pathelement location="${project.resources.testsuite}"/> </classpath> <xmlfileset dir="${project.resources.testsuite}" @@ -411,7 +406,7 @@ <pathelement location="${output.lib}/${ieee-1516.jar}"/> <pathelement location="${output.lib}/${hla-1.3.jar}"/> <pathelement location="${output.lib}/${rti.jar}"/> - <pathelement location="${project.resources.properties}"/> + <pathelement location="${project.resources}"/> </classpath> <jvmarg value="-server"/> @@ -425,8 +420,7 @@ <!-- Cleaning --> <!-- ================================================================== --> - <target name="clean-light" depends="" - description="Cleans any editor backup files."> + <target name="clean-light" description="Cleans any editor backup files."> <delete> <fileset dir="${project.root}" includes="**/*~" defaultexcludes="no"/> </delete> Modified: trunk/build/intellij/HLA 1.3.iml =================================================================== --- trunk/build/intellij/HLA 1.3.iml 2007-02-08 15:41:53 UTC (rev 103) +++ trunk/build/intellij/HLA 1.3.iml 2007-02-08 19:24:14 UTC (rev 104) @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <module version="4" relativePaths="true" type="JAVA_MODULE"> <component name="ModuleRootManager" /> - <component name="NewModuleRootManager"> + <component name="NewModuleRootManager" inherit-compiler-output="false"> <output url="file://$MODULE_DIR$/../output/hla-1.3/classes" /> <exclude-output /> <content url="file://$MODULE_DIR$/../../hla-1.3"> @@ -9,6 +9,8 @@ </content> <orderEntry type="inheritedJdk" /> <orderEntry type="sourceFolder" forTests="false" /> + <orderEntry type="library" name="logback" level="project" /> + <orderEntry type="library" name="slf4j" level="project" /> <orderEntryProperties /> </component> <component name="copyright"> Modified: trunk/build/intellij/IEEE 1516.iml =================================================================== --- trunk/build/intellij/IEEE 1516.iml 2007-02-08 15:41:53 UTC (rev 103) +++ trunk/build/intellij/IEEE 1516.iml 2007-02-08 19:24:14 UTC (rev 104) @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <module version="4" relativePaths="true" type="JAVA_MODULE"> <component name="ModuleRootManager" /> - <component name="NewModuleRootManager"> + <component name="NewModuleRootManager" inherit-compiler-output="false"> <output url="file://$MODULE_DIR$/../output/ieee-1516/classes" /> <exclude-output /> <content url="file://$MODULE_DIR$/../../ieee-1516"> Modified: trunk/build/intellij/OHLA.iml =================================================================== --- trunk/build/intellij/OHLA.iml 2007-02-08 15:41:53 UTC (rev 103) +++ trunk/build/intellij/OHLA.iml 2007-02-08 19:24:14 UTC (rev 104) @@ -1,22 +1,13 @@ <?xml version="1.0" encoding="UTF-8"?> <module version="4" relativePaths="true" type="JAVA_MODULE"> <component name="ModuleRootManager" /> - <component name="NewModuleRootManager"> + <component name="NewModuleRootManager" inherit-compiler-output="false"> <exclude-output /> <content url="file://$MODULE_DIR$/../.."> <excludeFolder url="file://$MODULE_DIR$/../output" /> </content> <orderEntry type="inheritedJdk" /> <orderEntry type="sourceFolder" forTests="false" /> - <orderEntry type="module-library"> - <library> - <CLASSES> - <root url="file://$MODULE_DIR$/../../resources/properties" /> - </CLASSES> - <JAVADOC /> - <SOURCES /> - </library> - </orderEntry> <orderEntryProperties /> </component> <component name="copyright"> Modified: trunk/build/intellij/OHLA.ipr =================================================================== --- trunk/build/intellij/OHLA.ipr 2007-02-08 15:41:53 UTC (rev 103) +++ trunk/build/intellij/OHLA.ipr 2007-02-08 19:24:14 UTC (rev 104) @@ -96,7 +96,6 @@ </component> <component name="CompilerConfiguration"> <option name="DEFAULT_COMPILER" value="Javac" /> - <option name="CLEAR_OUTPUT_DIRECTORY" value="false" /> <option name="DEPLOY_AFTER_MAKE" value="0" /> <resourceExtensions> <entry name=".+\.(properties|xml|html|dtd|tld)" /> @@ -202,6 +201,7 @@ <option name="OPTION_DEPRECATED_LIST" value="true" /> <option name="OTHER_OPTIONS" value="" /> <option name="HEAP_SIZE" /> + <option name="LOCALE" /> <option name="OPEN_IN_BROWSER" value="true" /> </component> <component name="JikesSettings"> @@ -220,121 +220,121 @@ </component> <component name="Palette2"> <group name="Swing"> - <item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false"> + <item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false" auto-create-binding="false" can-attach-label="false"> <default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" /> </item> - <item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false"> + <item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false" auto-create-binding="false" can-attach-label="false"> <default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" /> </item> - <item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false"> + <item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false" auto-create-binding="false" can-attach-label="false"> <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" /> </item> - <item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false"> + <item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false" auto-create-binding="false" can-attach-label="true"> <default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" /> </item> - <item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false"> + <item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false" auto-create-binding="true" can-attach-label="false"> <default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" /> <initial-values> <property name="text" value="Button" /> </initial-values> </item> - <item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false"> + <item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false" auto-create-binding="true" can-attach-label="false"> <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" /> <initial-values> <property name="text" value="RadioButton" /> </initial-values> </item> - <item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false"> + <item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false" auto-create-binding="true" can-attach-label="false"> <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" /> <initial-values> <property name="text" value="CheckBox" /> </initial-values> </item> - <item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false"> + <item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false" auto-create-binding="false" can-attach-label="false"> <default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" /> <initial-values> <property name="text" value="Label" /> </initial-values> </item> - <item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false"> + <item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false" auto-create-binding="true" can-attach-label="true"> <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1"> <preferred-size width="150" height="-1" /> </default-constraints> </item> - <item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false"> + <item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false" auto-create-binding="true" can-attach-label="true"> <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1"> <preferred-size width="150" height="-1" /> </default-constraints> </item> - <item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false"> + <item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false" auto-create-binding="true" can-attach-label="true"> <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1"> <preferred-size width="150" height="-1" /> </default-constraints> </item> - <item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false"> + <item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false" auto-create-binding="true" can-attach-label="true"> <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> <preferred-size width="150" height="50" /> </default-constraints> </item> - <item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false"> + <item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false" auto-create-binding="true" can-attach-label="true"> <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> <preferred-size width="150" height="50" /> </default-constraints> </item> - <item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false"> + <item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false" auto-create-binding="true" can-attach-label="true"> <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> <preferred-size width="150" height="50" /> </default-constraints> </item> - <item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false"> + <item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false" auto-create-binding="true" can-attach-label="true"> <default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" /> </item> - <item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false"> + <item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false" auto-create-binding="true" can-attach-label="false"> <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> <preferred-size width="150" height="50" /> </default-constraints> </item> - <item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false"> + <item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false" auto-create-binding="true" can-attach-label="false"> <default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3"> <preferred-size width="150" height="50" /> </default-constraints> </item> - <item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false"> + <item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false" auto-create-binding="true" can-attach-label="false"> <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> <preferred-size width="150" height="50" /> </default-constraints> </item> - <item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false"> + <item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false" auto-create-binding="true" can-attach-label="false"> <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3"> <preferred-size width="200" height="200" /> </default-constraints> </item> - <item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false"> + <item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false" auto-create-binding="false" can-attach-label="false"> <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3"> <preferred-size width="200" height="200" /> </default-constraints> </item> - <item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false"> + <item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false" auto-create-binding="true" can-attach-label="true"> <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" /> </item> - <item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false"> + <item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false" auto-create-binding="true" can-attach-label="false"> <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" /> </item> - <item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.png" removable="false"> + <item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.png" removable="false" auto-create-binding="false" can-attach-label="false"> <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" /> </item> - <item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.png" removable="false"> + <item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.png" removable="false" auto-create-binding="true" can-attach-label="false"> <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" /> </item> - <item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.png" removable="false"> + <item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.png" removable="false" auto-create-binding="false" can-attach-label="false"> <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1"> <preferred-size width="-1" height="20" /> </default-constraints> </item> - <item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.png" removable="false"> + <item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.png" removable="false" auto-create-binding="false" can-attach-label="false"> <default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" /> </item> - <item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.png" removable="false"> + <item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.png" removable="false" auto-create-binding="true" can-attach-label="false"> <default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" /> </item> </group> @@ -348,7 +348,7 @@ <module fileurl="file://$PROJECT_DIR$/Testsuite.iml" filepath="$PROJECT_DIR$/Testsuite.iml" /> </modules> </component> - <component name="ProjectRootManager" version="2" assert-keyword="true" jdk-15="true" project-jdk-name="1.5" /> + <component name="ProjectRootManager" version="2" assert-keyword="true" jdk-15="true" project-jdk-name="1.6" project-jdk-type="JavaSDK" /> <component name="ProjectRunConfigurationManager" /> <component name="RmicSettings"> <option name="IS_EANABLED" value="false" /> @@ -394,7 +394,7 @@ <option name="filler" value=" " /> </value> </option> - <option name="notice" value="Copyright (c) &#36;today.year, Michael Newcomb Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License." /> + <option name="notice" value="Copyright (c) 2006-2007, Michael Newcomb Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License." /> <option name="keyword" value="Copyright" /> <option name="fileTypeOverride" value="4" /> <option name="relativeBefore" value="true" /> @@ -576,31 +576,26 @@ <root url="file://$PROJECT_DIR$/../../../mina-1.1/core/src/main/java" /> </SOURCES> </library> - <library name="slf4j-log4j12"> + <library name="logback"> <CLASSES> - <root url="jar://$PROJECT_DIR$/../../thirdparty/slf4j/lib/slf4j-log4j12.jar!/" /> + <root url="jar://$PROJECT_DIR$/../../thirdparty/logback/lib/logback-classic-0.9.jar!/" /> + <root url="jar://$PROJECT_DIR$/../../thirdparty/logback/lib/logback-core-0.9.jar!/" /> </CLASSES> <JAVADOC /> <SOURCES /> </library> - <library name="slf4j-nop"> + <library name="slf4j"> <CLASSES> - <root url="jar://$PROJECT_DIR$/../../thirdparty/slf4j/lib/slf4j-nop.jar!/" /> + <root url="jar://$PROJECT_DIR$/../../thirdparty/slf4j/lib/slf4j-api-1.2.jar!/" /> </CLASSES> <JAVADOC /> <SOURCES /> </library> - <library name="log4j-1.2.14"> - <CLASSES> - <root url="jar://$PROJECT_DIR$/../../thirdparty/apache/log4j/lib/log4j-1.2.14.jar!/" /> - </CLASSES> - <JAVADOC /> - <SOURCES /> - </library> </component> <component name="uidesigner-configuration"> <option name="INSTRUMENT_CLASSES" value="true" /> <option name="COPY_FORMS_RUNTIME_TO_OUTPUT" value="true" /> + <option name="DEFAULT_LAYOUT_MANAGER" value="GridLayoutManager" /> </component> <UsedPathMacros /> </project> Modified: trunk/build/intellij/OHLA.iws =================================================================== --- trunk/build/intellij/OHLA.iws 2007-02-08 15:41:53 UTC (rev 103) +++ trunk/build/intellij/OHLA.iws 2007-02-08 19:24:14 UTC (rev 104) @@ -1,7 +1,9 @@ <?xml version="1.0" encoding="UTF-8"?> <project version="4" relativePaths="true"> <component name="AspectsView" /> - <component name="BookmarkManager" /> + <component name="BookmarkManager"> + <editor_bookmark url="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/objects/ObjectInstance.java" line="211" /> + </component> <component name="ChangeBrowserSettings"> <option name="MAIN_SPLITTER_PROPORTION" value="0.3" /> <option name="MESSAGES_SPLITTER_PROPORTION" value="0.8" /> @@ -17,7 +19,35 @@ <option name="USER" value="" /> </component> <component name="ChangeListManager"> - <list default="true" name="Default" comment="" /> + <list default="true" name="Default" comment=""> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java" afterPath="$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/OHLA.iml" afterPath="$PROJECT_DIR$/OHLA.iml" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/Federate.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/Federate.java" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/time/TimeKeeper.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/time/TimeKeeper.java" /> + <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/../../thirdparty/logback/LICENSE.txt" /> + <change type="DELETED" beforePath="D:\projects\ohla-0.4\resources\properties\log4j.properties" afterPath="" /> + <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/../../resources/logback-test.xml" /> + <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\federation\time\TimeConstrainedFederate.java" afterPath="" /> + <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/../../thirdparty/logback/lib/logback-core-0.9.jar" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/RTI.iml" afterPath="$PROJECT_DIR$/RTI.iml" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/IEEE 1516.iml" afterPath="$PROJECT_DIR$/IEEE 1516.iml" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../build.xml" afterPath="$PROJECT_DIR$/../build.xml" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/OHLA.iws" afterPath="$PROJECT_DIR$/OHLA.iws" /> + <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/../../thirdparty/logback" /> + <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\federation\time\TimeRegulatingFederate.java" afterPath="" /> + <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/../../thirdparty/logback/lib/logback-classic-0.9.jar" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/Federate.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/Federate.java" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/time/TimeManager.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/time/TimeManager.java" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../resources/testsuite/ieee-1516-testng.xml" afterPath="$PROJECT_DIR$/../../resources/testsuite/ieee-1516-testng.xml" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/OHLA.ipr" afterPath="$PROJECT_DIR$/OHLA.ipr" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/OwnershipManagementTestNG.java" afterPath="$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/OwnershipManagementTestNG.java" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/FederationManagementTestNG.java" afterPath="$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/FederationManagementTestNG.java" /> + <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/../../thirdparty/logback/lib" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/HLA 1.3.iml" afterPath="$PROJECT_DIR$/HLA 1.3.iml" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/TimeManagementTestNG.java" afterPath="$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/TimeManagementTestNG.java" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/Testsuite.iml" afterPath="$PROJECT_DIR$/Testsuite.iml" /> + </list> + <list name="Failed commit: Default" comment="- removed log4j" /> </component> <component name="ChangeListSynchronizer" /> <component name="ChangesViewManager" flattened_view="true" /> @@ -32,6 +62,8 @@ <option name="AUTO_SHOW_ERRORS_IN_EDITOR" value="true" /> <option name="CLOSE_MESSAGE_VIEW_IF_SUCCESS" value="true" /> <option name="COMPILE_DEPENDENT_FILES" value="false" /> + <option name="CLEAR_OUTPUT_DIRECTORY" value="false" /> + <option name="ASSERT_NOT_NULL" value="true" /> </component> <component name="CoverageDataManager" /> <component name="Cvs2Configuration"> @@ -85,6 +117,47 @@ <disable_hints /> </component> <component name="DebuggerManager"> + <line_breakpoints> + <breakpoint url="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/objects/ObjectInstance.java" line="102" class="net.sf.ohla.rti1516.federation.objects.ObjectInstance" package="net.sf.ohla.rti1516.federation.objects"> + <option name="ENABLED" value="true" /> + <option name="SUSPEND_POLICY" value="SuspendAll" /> + <option name="LOG_ENABLED" value="false" /> + <option name="LOG_EXPRESSION_ENABLED" value="false" /> + <option name="COUNT_FILTER_ENABLED" value="false" /> + <option name="COUNT_FILTER" value="0" /> + <option name="CONDITION_ENABLED" value="false" /> + <option name="CLASS_FILTERS_ENABLED" value="false" /> + <option name="INSTANCE_FILTERS_ENABLED" value="false" /> + <option name="CONDITION" value="" /> + <option name="LOG_MESSAGE" value="" /> + </breakpoint> + <breakpoint url="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/objects/AttributeInstance.java" line="141" class="net.sf.ohla.rti1516.federation.objects.AttributeInstance" package="net.sf.ohla.rti1516.federation.objects"> + <option name="ENABLED" value="true" /> + <option name="SUSPEND_POLICY" value="SuspendAll" /> + <option name="LOG_ENABLED" value="false" /> + <option name="LOG_EXPRESSION_ENABLED" value="false" /> + <option name="COUNT_FILTER_ENABLED" value="false" /> + <option name="COUNT_FILTER" value="0" /> + <option name="CONDITION_ENABLED" value="false" /> + <option name="CLASS_FILTERS_ENABLED" value="false" /> + <option name="INSTANCE_FILTERS_ENABLED" value="false" /> + <option name="CONDITION" value="" /> + <option name="LOG_MESSAGE" value="" /> + </breakpoint> + <breakpoint url="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/objects/ObjectInstance.java" line="211" class="net.sf.ohla.rti1516.federation.objects.ObjectInstance" package="net.sf.ohla.rti1516.federation.objects"> + <option name="ENABLED" value="true" /> + <option name="SUSPEND_POLICY" value="SuspendAll" /> + <option name="LOG_ENABLED" value="false" /> + <option name="LOG_EXPRESSION_ENABLED" value="false" /> + <option name="COUNT_FILTER_ENABLED" value="false" /> + <option name="COUNT_FILTER" value="0" /> + <option name="CONDITION_ENABLED" value="false" /> + <option name="CLASS_FILTERS_ENABLED" value="false" /> + <option name="INSTANCE_FILTERS_ENABLED" value="false" /> + <option name="CONDITION" value="" /> + <option name="LOG_MESSAGE" value="" /> + </breakpoint> + </line_breakpoints> <breakpoint_any> <breakpoint> <option name="NOTIFY_CAUGHT" value="true" /> @@ -169,56 +242,87 @@ </component> <component name="FileEditorManager"> <leaf> - <file leaf-file-name="FederationExecution.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java"> + <file leaf-file-name="ObjectManagementTestNG.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="403" column="0" selection-start="14488" selection-end="14488" vertical-scroll-proportion="0.021197008"> + <state line="481" column="39" selection-start="17964" selection-end="17964" vertical-scroll-proportion="0.021573603"> <folding /> </state> </provider> </entry> </file> - <file leaf-file-name="ObjectInstance.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/objects/ObjectInstance.java"> + <file leaf-file-name="OwnershipManagementTestNG.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/OwnershipManagementTestNG.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="47" column="13" selection-start="1932" selection-end="1932" vertical-scroll-proportion="0.021197008"> - <folding> - <element signature="imports" expanded="true" /> - <marker date="1166728743453" expanded="true" signature="13916:13936" placeholder="{...}" /> - </folding> + <state line="550" column="0" selection-start="19642" selection-end="19642" vertical-scroll-proportion="0.021573603"> + <folding /> </state> </provider> </entry> </file> - <file leaf-file-name="ObjectManager.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/objects/ObjectManager.java"> + <file leaf-file-name="SupportServicesTestNG.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/SupportServicesTestNG.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="74" column="14" selection-start="2434" selection-end="2434" vertical-scroll-proportion="0.70746636"> - <folding> - <marker date="1166728740359" expanded="true" signature="2068:2178" placeholder="{...}" /> - </folding> + <state line="43" column="13" selection-start="1566" selection-end="1566" vertical-scroll-proportion="0.021573603"> + <folding /> </state> </provider> </entry> </file> - <file leaf-file-name="AttributeInstance.java" pinned="false" current="true" current-in-tab="true"> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/objects/AttributeInstance.java"> + <file leaf-file-name="Federate.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/Federate.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="18" column="0" selection-start="655" selection-end="655" vertical-scroll-proportion="0.08323134"> + <state line="338" column="38" selection-start="9390" selection-end="9390" vertical-scroll-proportion="0.021573603"> <folding /> </state> </provider> </entry> </file> - <file leaf-file-name="AttributeInstance.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/objects/AttributeInstance.java"> + <file leaf-file-name="ieee-1516-testng.xml" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../resources/testsuite/ieee-1516-testng.xml"> <provider selected="true" editor-type-id="text-editor"> - <state line="30" column="13" selection-start="1035" selection-end="1035" vertical-scroll-proportion="0.124847"> + <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0"> <folding /> </state> </provider> </entry> </file> + <file leaf-file-name="TestObjectModel.xml" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../resources/testsuite/TestObjectModel.xml"> + <provider selected="true" editor-type-id="text-editor"> + <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0"> + <folding /> + </state> + </provider> + </entry> + </file> + <file leaf-file-name="TimeManagementTestNG.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/TimeManagementTestNG.java"> + <provider selected="true" editor-type-id="text-editor"> + <state line="626" column="13" selection-start="23219" selection-end="23219" vertical-scroll-proportion="0.021573603"> + <folding /> + </state> + </provider> + </entry> + </file> + <file leaf-file-name="logback-test.xml" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../resources/logback-test.xml"> + <provider selected="true" editor-type-id="text-editor"> + <state line="20" column="54" selection-start="839" selection-end="839" vertical-scroll-proportion="0.4314721"> + <folding /> + </state> + </provider> + </entry> + </file> + <file leaf-file-name="build.xml" pinned="false" current="true" current-in-tab="true"> + <entry file="file://$PROJECT_DIR$/../build.xml"> + <provider selected="true" editor-type-id="text-editor"> + <state line="44" column="0" selection-start="1897" selection-end="1897" vertical-scroll-proportion="0.35406092"> + <folding /> + </state> + </provider> + </entry> + </file> </leaf> </component> <component name="FindManager"> @@ -235,20 +339,15 @@ <option name="AUTOSCROLL_TO_SOURCE" value="false" /> <option name="SPLITTER_PROPORTION" value="0.5" /> <option name="GROUP_BY_SEVERITY" value="false" /> + <option name="FILTER_RESOLVED_ITEMS" value="true" /> <option name="ANALYZE_TEST_SOURCES" value="true" /> + <option name="SHOW_DIFF_WITH_PREVIOUS_RUN" value="false" /> <option name="SCOPE_TYPE" value="3" /> <option name="CUSTOM_SCOPE_NAME" value="Project Files" /> - <profile name="Default" /> + <option name="SHOW_ONLY_DIFF" value="false" /> + <option name="myCurrentProfileName" value="Default" /> </component> - <component name="J2EEProjectPane"> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.j2ee.module.view.nodes.J2EEProjectNodeDescriptor" /> - </PATH_ELEMENT> - </PATH> - <setting name="SHOW_AS_DEPLOYMENT_VIEW" value="false" /> - </component> + <component name="J2EEProjectPane" /> <component name="JspContextManager" /> <component name="ModuleEditorState"> <option name="LAST_EDITED_MODULE_NAME" value="OHLA" /> @@ -256,36 +355,14 @@ </component> <component name="NamedScopeManager" /> <component name="PackagesPane"> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageViewProjectNode" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="RTI" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageViewModuleNode" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="RTI" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageViewModuleNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="hla.rti1516.jlc.omt" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageElementNode" /> - </PATH_ELEMENT> - </PATH> + <subPane> + <PATH> + <PATH_ELEMENT> + <option name="myItemId" value="OHLA.ipr" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageViewProjectNode" /> + </PATH_ELEMENT> + </PATH> + </subPane> </component> <component name="PerforceChangeBrowserSettings"> <option name="USE_CLIENT_FILTER" value="true" /> @@ -309,13 +386,9 @@ <option name="ENABLED" value="true" /> <option name="USE_LOGIN" value="false" /> <option name="LOGIN_SILENTLY" value="false" /> - <option name="INTEGRATE_BRANCH_NAME" /> - <option name="INTEGRATE_CHANGELIST_NUM" value="-1" /> <option name="INTEGRATE_RUN_RESOLVE" value="true" /> <option name="INTEGRATE_REVERT_UNCHANGED" value="true" /> - <option name="INTEGRATE_CHANGE_LIST_NUMBER" value="" /> - <option name="INTEGRATE_CHANGE_LIST" value="false" /> - <option name="INTEGRATE_REVERSE" value="false" /> + <option name="SERVER_TIMEOUT" value="20000" /> </component> <component name="ProjectLevelVcsManager"> <OptionsSetting value="true" id="Add" /> @@ -332,257 +405,451 @@ <ConfirmationsSetting value="0" id="Remove" /> </component> <component name="ProjectPane"> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="RTI" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="RTI" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla\rti1516" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="RTI" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla\rti1516" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla\rti1516\federation" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="RTI" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla\rti1516" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla\rti1516\federation" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla\rti1516\federation\objects" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="RTI" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla\rti1516" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla\rti1516\federate" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="RTI" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla\rti1516" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla\rti1516\federate" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla\rti1516\federate\objects" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="RTI" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java\net\sf\ohla" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="RTI" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4-latest\rti\src\java" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - </PATH> + <subPane> + <PATH> + <PATH_ELEMENT> + <option name="myItemId" value="OHLA.ipr" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="Testsuite" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> + </PATH_ELEMENT> + </PATH> + <PATH> + <PATH_ELEMENT> + <option name="myItemId" value="OHLA.ipr" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="Testsuite" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src\java" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src\java\net\sf\ohla" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src\java\net\sf\ohla\rti1516" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + </PATH> + <PATH> + <PATH_ELEMENT> + <option name="myItemId" value="OHLA.ipr" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="Testsuite" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src" /> + <option name="myItemType" value="com.intell... [truncated message content] |
From: <mne...@us...> - 2007-02-09 16:28:48
|
Revision: 105 http://svn.sourceforge.net/ohla/?rev=105&view=rev Author: mnewcomb Date: 2007-02-09 08:28:42 -0800 (Fri, 09 Feb 2007) Log Message: ----------- - all tests passing Modified Paths: -------------- trunk/build/intellij/OHLA.iws trunk/resources/logback-test.xml trunk/resources/testsuite/ieee-1516-testng.xml trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java trunk/rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java trunk/rti/src/java/net/sf/ohla/rti1516/messages/callbacks/TimeAdvanceGrant.java trunk/testsuite/src/java/net/sf/ohla/rti1516/TimeManagementTestNG.java Modified: trunk/build/intellij/OHLA.iws =================================================================== --- trunk/build/intellij/OHLA.iws 2007-02-08 19:24:14 UTC (rev 104) +++ trunk/build/intellij/OHLA.iws 2007-02-09 16:28:42 UTC (rev 105) @@ -20,32 +20,13 @@ </component> <component name="ChangeListManager"> <list default="true" name="Default" comment=""> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java" afterPath="$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/OHLA.iml" afterPath="$PROJECT_DIR$/OHLA.iml" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../resources/logback-test.xml" afterPath="$PROJECT_DIR$/../../resources/logback-test.xml" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../resources/testsuite/ieee-1516-testng.xml" afterPath="$PROJECT_DIR$/../../resources/testsuite/ieee-1516-testng.xml" /> <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/Federate.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/Federate.java" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/time/TimeKeeper.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/time/TimeKeeper.java" /> - <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/../../thirdparty/logback/LICENSE.txt" /> - <change type="DELETED" beforePath="D:\projects\ohla-0.4\resources\properties\log4j.properties" afterPath="" /> - <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/../../resources/logback-test.xml" /> - <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\federation\time\TimeConstrainedFederate.java" afterPath="" /> - <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/../../thirdparty/logback/lib/logback-core-0.9.jar" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/RTI.iml" afterPath="$PROJECT_DIR$/RTI.iml" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/IEEE 1516.iml" afterPath="$PROJECT_DIR$/IEEE 1516.iml" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../build.xml" afterPath="$PROJECT_DIR$/../build.xml" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/messages/callbacks/TimeAdvanceGrant.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/messages/callbacks/TimeAdvanceGrant.java" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/TimeManagementTestNG.java" afterPath="$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/TimeManagementTestNG.java" /> <change type="MODIFICATION" beforePath="$PROJECT_DIR$/OHLA.iws" afterPath="$PROJECT_DIR$/OHLA.iws" /> - <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/../../thirdparty/logback" /> - <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\federation\time\TimeRegulatingFederate.java" afterPath="" /> - <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/../../thirdparty/logback/lib/logback-classic-0.9.jar" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/Federate.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/Federate.java" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/time/TimeManager.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/time/TimeManager.java" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../resources/testsuite/ieee-1516-testng.xml" afterPath="$PROJECT_DIR$/../../resources/testsuite/ieee-1516-testng.xml" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/OHLA.ipr" afterPath="$PROJECT_DIR$/OHLA.ipr" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/OwnershipManagementTestNG.java" afterPath="$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/OwnershipManagementTestNG.java" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/FederationManagementTestNG.java" afterPath="$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/FederationManagementTestNG.java" /> - <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/../../thirdparty/logback/lib" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/HLA 1.3.iml" afterPath="$PROJECT_DIR$/HLA 1.3.iml" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/TimeManagementTestNG.java" afterPath="$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/TimeManagementTestNG.java" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/Testsuite.iml" afterPath="$PROJECT_DIR$/Testsuite.iml" /> </list> <list name="Failed commit: Default" comment="- removed log4j" /> </component> @@ -242,46 +223,48 @@ </component> <component name="FileEditorManager"> <leaf> - <file leaf-file-name="ObjectManagementTestNG.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java"> + <file leaf-file-name="Federate.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/Federate.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="481" column="39" selection-start="17964" selection-end="17964" vertical-scroll-proportion="0.021573603"> - <folding /> + <state line="428" column="14" selection-start="16700" selection-end="16700" vertical-scroll-proportion="0.33252132"> + <folding> + <element signature="imports" expanded="true" /> + </folding> </state> </provider> </entry> </file> - <file leaf-file-name="OwnershipManagementTestNG.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/OwnershipManagementTestNG.java"> + <file leaf-file-name="ObjectManagementTestNG.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="550" column="0" selection-start="19642" selection-end="19642" vertical-scroll-proportion="0.021573603"> + <state line="15" column="0" selection-start="605" selection-end="605" vertical-scroll-proportion="0.020706456"> <folding /> </state> </provider> </entry> </file> - <file leaf-file-name="SupportServicesTestNG.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/SupportServicesTestNG.java"> + <file leaf-file-name="TimeAdvanceGrant.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/messages/callbacks/TimeAdvanceGrant.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="43" column="13" selection-start="1566" selection-end="1566" vertical-scroll-proportion="0.021573603"> + <state line="35" column="3" selection-start="1062" selection-end="1062" vertical-scroll-proportion="0.35200974"> <folding /> </state> </provider> </entry> </file> - <file leaf-file-name="Federate.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/Federate.java"> + <file leaf-file-name="TimeManager.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/time/TimeManager.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="338" column="38" selection-start="9390" selection-end="9390" vertical-scroll-proportion="0.021573603"> + <state line="675" column="14" selection-start="18064" selection-end="18064" vertical-scroll-proportion="0.39464068"> <folding /> </state> </provider> </entry> </file> - <file leaf-file-name="ieee-1516-testng.xml" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../resources/testsuite/ieee-1516-testng.xml"> + <file leaf-file-name="OHLARTIambassador.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/OHLARTIambassador.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0"> + <state line="2938" column="0" selection-start="79846" selection-end="79846" vertical-scroll-proportion="0.020706456"> <folding /> </state> </provider> @@ -299,25 +282,34 @@ <file leaf-file-name="TimeManagementTestNG.java" pinned="false" current="false" current-in-tab="false"> <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/TimeManagementTestNG.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="626" column="13" selection-start="23219" selection-end="23219" vertical-scroll-proportion="0.021573603"> + <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0"> <folding /> </state> </provider> </entry> </file> + <file leaf-file-name="ieee-1516-testng.xml" pinned="false" current="true" current-in-tab="true"> + <entry file="file://$PROJECT_DIR$/../../resources/testsuite/ieee-1516-testng.xml"> + <provider selected="true" editor-type-id="text-editor"> + <state line="22" column="9" selection-start="909" selection-end="909" vertical-scroll-proportion="0.041412912"> + <folding /> + </state> + </provider> + </entry> + </file> <file leaf-file-name="logback-test.xml" pinned="false" current="false" current-in-tab="false"> <entry file="file://$PROJECT_DIR$/../../resources/logback-test.xml"> <provider selected="true" editor-type-id="text-editor"> - <state line="20" column="54" selection-start="839" selection-end="839" vertical-scroll-proportion="0.4314721"> + <state line="24" column="46" selection-start="945" selection-end="945" vertical-scroll-proportion="0.35200974"> <folding /> </state> </provider> </entry> </file> - <file leaf-file-name="build.xml" pinned="false" current="true" current-in-tab="true"> + <file leaf-file-name="build.xml" pinned="false" current="false" current-in-tab="false"> <entry file="file://$PROJECT_DIR$/../build.xml"> <provider selected="true" editor-type-id="text-editor"> - <state line="44" column="0" selection-start="1897" selection-end="1897" vertical-scroll-proportion="0.35406092"> + <state line="44" column="0" selection-start="1897" selection-end="1897" vertical-scroll-proportion="0.020706456"> <folding /> </state> </provider> @@ -829,6 +821,10 @@ <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\thirdparty\apache" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\thirdparty\apache\mina" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> </PATH> <PATH> <PATH_ELEMENT> @@ -849,7 +845,7 @@ <showLibraryContents /> <hideEmptyPackages ProjectPane="true" /> <abbreviatePackageNames /> - <showStructure PackagesPane="false" ProjectPane="false" Scope="false" Favorites="false" /> + <showStructure Favorites="false" PackagesPane="false" Scope="false" ProjectPane="false" /> <autoscrollToSource /> <autoscrollFromSource /> <sortByType /> @@ -868,8 +864,8 @@ <property name="cvs_file_history_flatOrder1" value="1" /> <property name="cvs_file_history_flatWidth1" value="299" /> <property name="cvs_file_history_treeWidth1" value="299" /> + <property name="cvs_file_history_treeOrder2" value="2" /> <property name="cvs_file_history_treeWidth3" value="298" /> - <property name="cvs_file_history_treeOrder2" value="2" /> <property name="GoToClass.includeLibraries" value="false" /> <property name="cvs_file_history_flatOrder2" value="2" /> <property name="MemberChooser.showClasses" value="true" /> @@ -878,8 +874,8 @@ <property name="cvs_file_history_treeWidth2" value="299" /> <property name="cvs_file_history_flatOrder3" value="3" /> <property name="GoToClass.toSaveIncludeLibraries" value="false" /> + <property name="RunManagerConfig.showSettingsBeforeRunnig" value="true" /> <property name="cvs_file_history_treeOrder0" value="0" /> - <property name="RunManagerConfig.showSettingsBeforeRunnig" value="true" /> </component> <component name="ReadonlyStatusHandler"> <option name="SHOW_DIALOG" value="true" /> @@ -895,6 +891,25 @@ </component> <component name="RestoreUpdateTree" /> <component name="RunManager" selected="Application.RTI"> + <configuration default="true" type="Remote" factoryName="Remote"> + <option name="USE_SOCKET_TRANSPORT" value="true" /> + <option name="SERVER_MODE" value="false" /> + <option name="SHMEM_ADDRESS" value="javadebug" /> + <option name="HOST" value="localhost" /> + <option name="PORT" value="5005" /> + </configuration> + <configuration default="true" type="Applet" factoryName="Applet"> + <module name="" /> + <option name="MAIN_CLASS_NAME" /> + <option name="HTML_FILE_NAME" /> + <option name="HTML_USED" value="false" /> + <option name="WIDTH" value="400" /> + <option name="HEIGHT" value="300" /> + <option name="POLICY_FILE" value="$APPLICATION_HOME_DIR$/bin/appletviewer.policy" /> + <option name="VM_PARAMETERS" /> + <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" /> + <option name="ALTERNATIVE_JRE_PATH" /> + </configuration> <configuration default="true" type="Application" factoryName="Application" enabled="false" merge="false"> <option name="MAIN_CLASS_NAME" /> <option name="VM_PARAMETERS" /> @@ -927,25 +942,6 @@ <option name="Make" value="true" /> </method> </configuration> - <configuration default="true" type="Applet" factoryName="Applet"> - <module name="" /> - <option name="MAIN_CLASS_NAME" /> - <option name="HTML_FILE_NAME" /> - <option name="HTML_USED" value="false" /> - <option name="WIDTH" value="400" /> - <option name="HEIGHT" value="300" /> - <option name="POLICY_FILE" value="$APPLICATION_HOME_DIR$/bin/appletviewer.policy" /> - <option name="VM_PARAMETERS" /> - <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" /> - <option name="ALTERNATIVE_JRE_PATH" /> - </configuration> - <configuration default="true" type="Remote" factoryName="Remote"> - <option name="USE_SOCKET_TRANSPORT" value="true" /> - <option name="SERVER_MODE" value="false" /> - <option name="SHMEM_ADDRESS" value="javadebug" /> - <option name="HOST" value="localhost" /> - <option name="PORT" value="5005" /> - </configuration> <configuration default="false" name="RTI" type="Application" factoryName="Application" enabled="false" merge="false"> <option name="MAIN_CLASS_NAME" value="net.sf.ohla.rti1516.RTI" /> <option name="VM_PARAMETERS" value="-ea -server" /> @@ -1043,22 +1039,144 @@ <option name="myItemId" value="" /> <option name="myItemType" value="" /> </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="Testsuite"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="testsuite/src/java/net/sf/ohla"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="rti1516"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> </PATH> <PATH> <PATH_ELEMENT USER_OBJECT="Root"> <option name="myItemId" value="" /> <option name="myItemType" value="" /> </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="Testsuite"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="testsuite/src/java/net/sf/ohla"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + </PATH> + <PATH> + <PATH_ELEMENT USER_OBJECT="Root"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> <PATH_ELEMENT USER_OBJECT="RTI"> <option name="myItemId" value="" /> <option name="myItemType" value="" /> </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="rti/src/java"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="net/sf/ohla"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="rti1516"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> </PATH> <PATH> <PATH_ELEMENT USER_OBJECT="Root"> <option name="myItemId" value="" /> <option name="myItemType" value="" /> </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="RTI"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="rti/src/java"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="net/sf/ohla"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="rti1516"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="federation"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + </PATH> + <PATH> + <PATH_ELEMENT USER_OBJECT="Root"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="RTI"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="rti/src/java"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="net/sf/ohla"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="rti1516"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="federate"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + </PATH> + <PATH> + <PATH_ELEMENT USER_OBJECT="Root"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="RTI"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="rti/src/java"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="net/sf/ohla"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + </PATH> + <PATH> + <PATH_ELEMENT USER_OBJECT="Root"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="RTI"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="rti/src/java"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + </PATH> + <PATH> + <PATH_ELEMENT USER_OBJECT="Root"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> <PATH_ELEMENT USER_OBJECT="OHLA"> <option name="myItemId" value="" /> <option name="myItemType" value="" /> @@ -1086,6 +1204,34 @@ <option name="myItemType" value="" /> </PATH_ELEMENT> </PATH> + <PATH> + <PATH_ELEMENT USER_OBJECT="Root"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="OHLA"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="D:\projects\ohla-0.4"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="resources"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + <PATH_ELEMENT USER_OBJECT="testsuite"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + </PATH> + <PATH> + <PATH_ELEMENT USER_OBJECT="Root"> + <option name="myItemId" value="" /> + <option name="myItemType" value="" /> + </PATH_ELEMENT> + </PATH> </subPane> </component> <component name="SelectInManager" /> @@ -1161,7 +1307,7 @@ <window_info id="CVS" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" /> <window_info id="IDEtalk" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" /> <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32791588" order="7" /> - <window_info id="Project" active="true" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.35279804" order="0" /> + <window_info id="Project" active="true" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.30738038" order="0" /> <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.34367815" order="1" /> <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" order="1" /> <window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32413793" order="8" /> @@ -1169,7 +1315,7 @@ <window_info id="Module Dependencies" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" /> <window_info id="Dependency Viewer" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32988507" order="8" /> <window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" /> - <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.15490673" order="1" /> + <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.15490673" order="1" /> <window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" /> <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.27816093" order="2" /> <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" order="2" /> @@ -1215,7 +1361,7 @@ <option name="PERFORM_COMMIT_IN_BACKGROUND" value="false" /> <option name="PUT_FOCUS_INTO_COMMENT" value="false" /> <option name="FORCE_NON_EMPTY_COMMENT" value="false" /> - <option name="LAST_COMMIT_MESSAGE" value="- removed log4j" /> + <option name="LAST_COMMIT_MESSAGE" value="- all but 1 time management test passes" /> <option name="SAVE_LAST_COMMIT_MESSAGE" value="true" /> <option name="CHECKIN_DIALOG_SPLITTER_PROPORTION" value="0.8" /> <option name="OPTIMIZE_IMPORTS_BEFORE_PROJECT_COMMIT" value="false" /> @@ -1223,12 +1369,11 @@ <option name="REFORMAT_BEFORE_FILE_COMMIT" value="false" /> <option name="FILE_HISTORY_DIALOG_COMMENTS_SPLITTER_PROPORTION" value="0.8" /> <option name="FILE_HISTORY_DIALOG_SPLITTER_PROPORTION" value="0.5" /> - <option name="ERROR_OCCURED" value="true" /> + <option name="ERROR_OCCURED" value="false" /> <option name="ACTIVE_VCS_NAME" value="svn" /> <option name="UPDATE_GROUP_BY_PACKAGES" value="false" /> <option name="SHOW_FILE_HISTORY_AS_TREE" value="false" /> <option name="FILE_HISTORY_SPLITTER_PROPORTION" value="0.6" /> - <MESSAGE value="- refactored some method names" /> <MESSAGE value="- fix for removed statics from RTI.java" /> <MESSAGE value="removed duplicate text from thrown exceptions" /> <MESSAGE value="- almost complete refactor to centralized RTI" /> @@ -1238,6 +1383,7 @@ <MESSAGE value="- Federation Management, Support Services, Declaration Management, and Object Management unit test cases passing" /> <MESSAGE value="- removed uncessary delay" /> <MESSAGE value="- removed log4j" /> + <MESSAGE value="- all but 1 time management test passes" /> </component> <component name="VssConfiguration"> <option name="CLIENT_PATH" value="" /> @@ -1320,79 +1466,88 @@ <option name="myLastEditedConfigurable" /> </component> <component name="editorHistoryManager"> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/time/TimeManager.java"> + <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/OwnershipManagementTestNG.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="251" column="14" selection-start="7030" selection-end="7030" vertical-scroll-proportion="0.02117061"> + <state line="550" column="0" selection-start="19642" selection-end="19642" vertical-scroll-proportion="0.020706456"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/time/TimeKeeper.java"> + <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/SupportServicesTestNG.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="174" column="0" selection-start="3895" selection-end="3895" vertical-scroll-proportion="0.02117061"> + <state line="43" column="13" selection-start="1566" selection-end="1566" vertical-scroll-proportion="0.020706456"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/DataDistributionManagementTestNG.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="126" column="13" selection-start="4144" selection-end="4144" vertical-scroll-proportion="0.02117061"> + <state line="152" column="0" selection-start="7195" selection-end="7239" vertical-scroll-proportion="0.020706456"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/DeclarationManagementTestNG.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/RTI.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="31" column="13" selection-start="1104" selection-end="1104" vertical-scroll-proportion="0.02117061"> + <state line="109" column="28" selection-start="3668" selection-end="3668" vertical-scroll-proportion="0.020706456"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/FederationManagementTestNG.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/OHLARTIambassador.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="316" column="40" selection-start="10953" selection-end="10953" vertical-scroll-proportion="0.022077922"> + <state line="2938" column="0" selection-start="79846" selection-end="79846" vertical-scroll-proportion="0.020706456"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java"> + <entry file="file://$PROJECT_DIR$/../build.xml"> <provider selected="true" editor-type-id="text-editor"> - <state line="481" column="39" selection-start="17964" selection-end="17964" vertical-scroll-proportion="0.021573603"> + <state line="44" column="0" selection-start="1897" selection-end="1897" vertical-scroll-proportion="0.020706456"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/OwnershipManagementTestNG.java"> + <entry file="file://$PROJECT_DIR$/../../resources/logback-test.xml"> <provider selected="true" editor-type-id="text-editor"> - <state line="550" column="0" selection-start="19642" selection-end="19642" vertical-scroll-proportion="0.021573603"> + <state line="24" column="46" selection-start="945" selection-end="945" vertical-scroll-proportion="0.35200974"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/SupportServicesTestNG.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/time/TimeManager.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="43" column="13" selection-start="1566" selection-end="1566" vertical-scroll-proportion="0.021573603"> + <state line="675" column="14" selection-start="18064" selection-end="18064" vertical-scroll-proportion="0.39464068"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/TimeManagementTestNG.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/Federate.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="626" column="13" selection-start="23219" selection-end="23219" vertical-scroll-proportion="0.021573603"> + <state line="78" column="0" selection-start="3168" selection-end="3201" vertical-scroll-proportion="0.020706456"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/Federate.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/messages/callbacks/TimeAdvanceGrant.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="338" column="38" selection-start="9390" selection-end="9390" vertical-scroll-proportion="0.021573603"> + <state line="35" column="3" selection-start="1062" selection-end="1062" vertical-scroll-proportion="0.35200974"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../resources/testsuite/ieee-1516-testng.xml"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/Federate.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0"> + <state line="428" column="14" selection-start="16700" selection-end="16700" vertical-scroll-proportion="0.33252132"> + <folding> + <element signature="imports" expanded="true" /> + </folding> + </state> + </provider> + </entry> + <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java"> + <provider selected="true" editor-type-id="text-editor"> + <state line="15" column="0" selection-start="605" selection-end="605" vertical-scroll-proportion="0.020706456"> <folding /> </state> </provider> @@ -1404,16 +1559,16 @@ </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../resources/logback-test.xml"> + <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/TimeManagementTestNG.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="20" column="54" selection-start="839" selection-end="839" vertical-scroll-proportion="0.4314721"> + <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../build.xml"> + <entry file="file://$PROJECT_DIR$/../../resources/testsuite/ieee-1516-testng.xml"> <provider selected="true" editor-type-id="text-editor"> - <state line="44" column="0" selection-start="1897" selection-end="1897" vertical-scroll-proportion="0.35406092"> + <state line="22" column="9" selection-start="909" selection-end="909" vertical-scroll-proportion="0.041412912"> <folding /> </state> </provider> Modified: trunk/resources/logback-test.xml =================================================================== --- trunk/resources/logback-test.xml 2007-02-08 19:24:14 UTC (rev 104) +++ trunk/resources/logback-test.xml 2007-02-09 16:28:42 UTC (rev 105) @@ -22,6 +22,10 @@ </layout> </appender> + <logger name="org.apache.mina.filter.executor.ExecutorFilter"> + <level value="INFO"/> + </logger> + <root> <level value="debug"/> <appender-ref ref="STDOUT"/> Modified: trunk/resources/testsuite/ieee-1516-testng.xml =================================================================== --- trunk/resources/testsuite/ieee-1516-testng.xml 2007-02-08 19:24:14 UTC (rev 104) +++ trunk/resources/testsuite/ieee-1516-testng.xml 2007-02-09 16:28:42 UTC (rev 105) @@ -16,35 +16,35 @@ <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" > <suite name="OHLA IEEE 1516 Testsuite" parallel="false" verbose="5"> - <!--<test name="IEEE 1516 - Federation Management">--> - <!--<classes>--> - <!--<class name="net.sf.ohla.rti1516.FederationManagementTestNG"/>--> - <!--</classes>--> - <!--</test>--> + <test name="IEEE 1516 - Federation Management"> + <classes> + <class name="net.sf.ohla.rti1516.FederationManagementTestNG"/> + </classes> + </test> - <!--<test name="IEEE 1516 - Support Services">--> - <!--<classes>--> - <!--<class name="net.sf.ohla.rti1516.SupportServicesTestNG"/>--> - <!--</classes>--> - <!--</test>--> + <test name="IEEE 1516 - Support Services"> + <classes> + <class name="net.sf.ohla.rti1516.SupportServicesTestNG"/> + </classes> + </test> - <!--<test name="IEEE 1516 - Declaration Management">--> - <!--<classes>--> - <!--<class name="net.sf.ohla.rti1516.DeclarationManagementTestNG"/>--> - <!--</classes>--> - <!--</test>--> + <test name="IEEE 1516 - Declaration Management"> + <classes> + <class name="net.sf.ohla.rti1516.DeclarationManagementTestNG"/> + </classes> + </test> - <!--<test name="IEEE 1516 - Object Management">--> - <!--<classes>--> - <!--<class name="net.sf.ohla.rti1516.ObjectManagementTestNG"/>--> - <!--</classes>--> - <!--</test>--> + <test name="IEEE 1516 - Object Management"> + <classes> + <class name="net.sf.ohla.rti1516.ObjectManagementTestNG"/> + </classes> + </test> - <!--<test name="IEEE 1516 - Ownership Management">--> - <!--<classes>--> - <!--<class name="net.sf.ohla.rti1516.OwnershipManagementTestNG"/>--> - <!--</classes>--> - <!--</test>--> + <test name="IEEE 1516 - Ownership Management"> + <classes> + <class name="net.sf.ohla.rti1516.OwnershipManagementTestNG"/> + </classes> + </test> <test name="IEEE 1516 - Time Management"> <classes> @@ -52,9 +52,9 @@ </classes> </test> - <!--<test name="IEEE 1516 - Data Distribution Management">--> - <!--<classes>--> - <!--<class name="net.sf.ohla.rti1516.DataDistributionManagementTestNG"/>--> - <!--</classes>--> - <!--</test>--> + <test name="IEEE 1516 - Data Distribution Management"> + <classes> + <class name="net.sf.ohla.rti1516.DataDistributionManagementTestNG"/> + </classes> + </test> </suite> Modified: trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java 2007-02-08 19:24:14 UTC (rev 104) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java 2007-02-09 16:28:42 UTC (rev 105) @@ -70,12 +70,15 @@ import net.sf.ohla.rti1516.messages.callbacks.ReceiveInteraction; import net.sf.ohla.rti1516.messages.callbacks.ReflectAttributeValues; import net.sf.ohla.rti1516.messages.callbacks.RemoveObjectInstance; +import net.sf.ohla.rti1516.messages.callbacks.TimeAdvanceGrant; import org.apache.mina.common.IoSession; import org.apache.mina.common.WriteFuture; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.slf4j.Marker; +import org.slf4j.MarkerFactory; import hla.rti1516.AsynchronousDeliveryAlreadyDisabled; import hla.rti1516.AsynchronousDeliveryAlreadyEnabled; @@ -214,8 +217,6 @@ public class Federate { - private static final Logger log = LoggerFactory.getLogger(Federate.class); - public static final String OHLA_FEDERATE_HOST_PROPERTY = "ohla.federate.%s.host"; public static final String OHLA_FEDERATE_PORT_PROPERTY = @@ -297,6 +298,9 @@ */ protected IoSession rtiSession; + protected final Logger log = LoggerFactory.getLogger(getClass()); + protected final Marker marker; + public Federate(String federateType, String federationExecutionName, FederateAmbassador federateAmbassador, MobileFederateServices mobileFederateServices, @@ -310,6 +314,8 @@ this.mobileFederateServices = mobileFederateServices; this.rtiSession = rtiSession; + marker = MarkerFactory.getMarker(federateType); + JoinFederationExecution joinFederationExecution = new JoinFederationExecution( federateType, federationExecutionName, mobileFederateServices); @@ -340,7 +346,7 @@ LogicalTime galt = joinFederationExecutionResponse.getGALT(); timeManager = new TimeManager(this, mobileFederateServices, galt); - log.info("joined federation execution: {}", federateHandle); + log.info(marker, "joined federation execution: {}", federateHandle); } else if (response instanceof FederationExecutionDoesNotExist) { @@ -425,7 +431,7 @@ futureTasksLock.lock(); try { - log.debug("{} processing future tasks: {}", this, maxFutureTaskTimestamp); + log.debug(marker, "processing future tasks: {}", maxFutureTaskTimestamp); for (TimestampedFutureTask timestampedFutureTask = futureTasks.peek(); timestampedFutureTask != null && @@ -433,14 +439,16 @@ maxFutureTaskTimestamp) <= 0; timestampedFutureTask = futureTasks.peek()) { + log.debug(marker, "processing future task: {}", timestampedFutureTask); + try { timestampedFutureTask.run(); } catch (Throwable t) { - log.error(String.format("unable to execute scheduled task: %s", - timestampedFutureTask), t); + log.error(marker, String.format("unable to execute scheduled task: %s", + timestampedFutureTask), t); } futureTasks.poll(); @@ -454,7 +462,7 @@ public boolean process(IoSession session, Object message) { - log.debug("{} processing: {}", this, message); + log.debug(marker, "processing: {}", message); boolean processed = true; if (message instanceof Callback) @@ -551,13 +559,59 @@ timeManager.getTimeLock().readLock().unlock(); } } + else if (message instanceof RemoveObjectInstance) + { + RemoveObjectInstance removeObjectInstance = + (RemoveObjectInstance) message; + + timeManager.getTimeLock().readLock().lock(); + try + { + OrderType receivedOrderType = + removeObjectInstance.getSentOrderType() == OrderType.TIMESTAMP && + timeManager.isTimeConstrained() ? OrderType.TIMESTAMP : + OrderType.RECEIVE; + + removeObjectInstance.setReceivedOrderType(receivedOrderType); + + if (receivedOrderType == OrderType.RECEIVE) + { + // receive order callbacks need to be held until released if we + // are constrained and in the time granted state, if asynchronous + // delivery is disabled + // + boolean hold = timeManager.isTimeConstrainedAndTimeGranted() && + !isAsynchronousDeliveryEnabled(); + + callbackManager.add(removeObjectInstance, hold); + } + else + { + // schedule the callback for the appropriate time + // + Future future = schedule(removeObjectInstance.getDeleteTime(), + new AddCallback(removeObjectInstance)); + + // register the message retraction handle + // + messageRetractionManager.add( + removeObjectInstance.getDeleteTime(), future, + removeObjectInstance.getMessageRetractionHandle()); + } + } + finally + { + timeManager.getTimeLock().readLock().unlock(); + } + } else { - boolean hold = message instanceof RemoveObjectInstance && - !isAsynchronousDeliveryEnabled() && - timeManager.isTimeConstrainedAndTimeGranted(); + if (message instanceof TimeAdvanceGrant) + { + processFutureTasks(((TimeAdvanceGrant) message).getTime()); + } - callbackManager.add((Callback) message, hold); + callbackManager.add((Callback) message); } } finally @@ -3231,6 +3285,8 @@ protected Future<Object> schedule(LogicalTime time, Callable<Object> callable) { + log.debug(marker, "scheduling task: {} at {}", callable, time); + TimestampedFutureTask future = new TimestampedFutureTask(time, callable); futureTasksLock.lock(); Modified: trunk/rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java 2007-02-08 19:24:14 UTC (rev 104) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java 2007-02-09 16:28:42 UTC (rev 105) @@ -87,6 +87,8 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.slf4j.Marker; +import org.slf4j.MarkerFactory; import hla.rti1516.AttributeHandle; import hla.rti1516.AttributeHandleSet; @@ -139,17 +141,15 @@ protected AtomicInteger federateCount = new AtomicInteger(Short.MIN_VALUE); protected AtomicInteger regionCount = new AtomicInteger(Short.MIN_VALUE); - protected final Logger log; + protected final Logger log = LoggerFactory.getLogger(getClass()); + protected final Marker marker; - protected ExecutorService synchronousWaiter = - Executors.newSingleThreadExecutor(); - public FederationExecution(String name, FDD fdd) { this.name = name; this.fdd = fdd; - log = LoggerFactory.getLogger(String.format("%s.%s", getClass(), name)); + marker = MarkerFactory.getMarker(name); } public String getName() @@ -193,7 +193,7 @@ public void joinFederationExecution( IoSession session, JoinFederationExecution joinFederationExecution) { - log.debug("client joining: {}", session.getRemoteAddress()); + log.debug(marker, "client joining: {}", session.getRemoteAddress()); federationExecutionStateLock.readLock().lock(); try @@ -231,7 +231,7 @@ new JoinFederationExecutionResponse( federateHandle, fdd, timeKeeper.getGALT()))); - log.debug("federate joined: {}", federate); + log.debug(marker, "federate joined: {}", federate); // TODO: set timeout // @@ -259,7 +259,7 @@ public void resignFederationExecution( Federate federate, ResignFederationExecution resignFederationExecution) { - log.debug("federate resigning: {} - {}", federate, + log.debug(marker, "federate resigning: {} - {}", federate, resignFederationExecution.getResignAction()); federationExecutionStateLock.readLock().lock(); @@ -272,7 +272,7 @@ federates.remove(federate.getFederateHandle()); - log.debug("federate resigned: {}", federate); + log.debug(marker, "federate resigned: {}", federate); } finally { Modified: trunk/rti/src/java/net/sf/ohla/rti1516/messages/callbacks/TimeAdvanceGrant.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/messages/callbacks/TimeAdvanceGrant.java 2007-02-08 19:24:14 UTC (rev 104) +++ trunk/rti/src/java/net/sf/ohla/rti1516/messages/callbacks/TimeAdvanceGrant.java 2007-02-09 16:28:42 UTC (rev 105) @@ -32,6 +32,11 @@ this.time = time; } + public LogicalTime getTime() + { + return time; + } + public void execute(FederateAmbassador federateAmbassador) throws InvalidLogicalTime, JoinedFederateIsNotInTimeAdvancingState, FederateInternalError Modified: trunk/testsuite/src/java/net/sf/ohla/rti1516/TimeManagementTestNG.java =================================================================== --- trunk/testsuite/src/java/net/sf/ohla/rti1516/TimeManagementTestNG.java 2007-02-08 19:24:14 UTC (rev 104) +++ trunk/testsuite/src/java/net/sf/ohla/rti1516/TimeManagementTestNG.java 2007-02-09 16:28:42 UTC (rev 105) @@ -76,9 +76,10 @@ protected Integer64Time four = new Integer64Time(4); protected Integer64Time five = new Integer64Time(5); protected Integer64Time six = new Integer64Time(6); - protected Integer64Time seven = new Integer64Time(7); - protected Integer64Time nine = new Integer64Time(9); + protected Integer64Time eight = new Integer64Time(8); protected Integer64Time ten = new Integer64Time(10); + protected Integer64Time eleven = new Integer64Time(11); + protected Integer64Time twelve = new Integer64Time(12); protected Integer64Time fifteen = new Integer64Time(15); protected Integer64Time twenty = new Integer64Time(20); protected Integer64Time thirty = new Integer64Time(30); @@ -628,39 +629,51 @@ federateAmbassadors.get(4).checkAttributeValuesNotReceived( objectInstanceHandle); - // bring all the federates to the same time + // advance constrained federates so they will be sure to receive the + // update (because they will be waiting for the remaining regulating + // federate to advance) // - rtiAmbassadors.get(3).timeAdvanceRequest(five); - rtiAmbassadors.get(4).timeAdvanceRequest(five); + rtiAmbassadors.get(3).timeAdvanceRequest(six); + rtiAmbassadors.get(4).timeAdvanceRequest(six); - federateAmbassadors.get(3).checkTimeAdvanceGrant(five); - federateAmbassadors.get(4).checkTimeAdvanceGrant(five); - // attribute values should have been released // federateAmbassadors.get(3).checkAttributeValues( objectInstanceHandle, attributeValues); federateAmbassadors.get(4).checkAttributeValues( objectInstanceHandle, attributeValues); - } - finally - { - rtiAmbassadors.get(2).deleteObjectInstance(objectInstanceHandle, null); - // bring all the federates to the same time + // finish time advance // rtiAmbassadors.get(2).timeAdvanceRequest(six); - rtiAmbassadors.get(3).timeAdvanceRequest(six); - rtiAmbassadors.get(4).timeAdvanceRequest(six); federateAmbassadors.get(2).checkTimeAdvanceGrant(six); federateAmbassadors.get(3).checkTimeAdvanceGrant(six); federateAmbassadors.get(4).checkTimeAdvanceGrant(six); + } + finally + { + rtiAmbassadors.get(2).deleteObjectInstance(objectInstanceHandle, null); + // advance constrained federates so they will be sure to receive the + // update (because they will be waiting for the remaining regulating + // federate to advance) + // + rtiAmbassadors.get(3).timeAdvanceRequest(eight); + rtiAmbassadors.get(4).timeAdvanceRequest(eight); + federateAmbassadors.get(3).checkForRemovedObjectInstanceHandle( objectInstanceHandle); federateAmbassadors.get(4).checkForRemovedObjectInstanceHandle( objectInstanceHandle); + + // finish time advance + // + rtiAmbassadors.get(2).timeAdvanceRequest(eight); + + federateAmbassadors.get(2).checkTimeAdvanceGrant(eight); + federateAmbassadors.get(3).checkTimeAdvanceGrant(eight); + federateAmbassadors.get(4).checkTimeAdvanceGrant(eight); } } @@ -684,20 +697,25 @@ federateAmbassadors.get(3).checkParameterValuesNotReceived(); federateAmbassadors.get(4).checkParameterValuesNotReceived(); - // bring all the federates to the same time + // advance constrained federates so they will be sure to receive the + // update (because they will be waiting for the remaining regulating + // federate to advance) // - rtiAmbassadors.get(2).timeAdvanceRequest(seven); - rtiAmbassadors.get(3).timeAdvanceRequest(seven); - rtiAmbassadors.get(4).timeAdvanceRequest(seven); + rtiAmbassadors.get(3).timeAdvanceRequest(ten); + rtiAmbassadors.get(4).timeAdvanceRequest(ten); - federateAmbassadors.get(2).checkTimeAdvanceGrant(seven); - federateAmbassadors.get(3).checkTimeAdvanceGrant(seven); - federateAmbassadors.get(4).checkTimeAdvanceGrant(seven); - // parameter values should have been released // federateAmbassadors.get(3).checkParameterValues(parameterValues); federateAmbassadors.get(4).checkParameterValues(parameterValues); + + // finish time advance + // + rtiAmbassadors.get(2).timeAdvanceRequest(ten); + + federateAmbassadors.get(2).checkTimeAdvanceGrant(ten); + federateAmbassadors.get(3).checkTimeAdvanceGrant(ten); + federateAmbassadors.get(4).checkTimeAdvanceGrant(ten); } @Test(dependsOnMethods = {"testSendInteractionWhileNotTimeAdvancing"}) @@ -720,24 +738,23 @@ attributeValues.put(attributeHandle3, ATTRIBUTE3_VALUE.getBytes()); rtiAmbassadors.get(2).updateAttributeValues( - objectInstanceHandle, attributeValues, null, ten); + objectInstanceHandle, attributeValues, null, twelve); - // the 2 constrained federates will not receive it because they do not - // have asynchronous delivery enabled and are not in the time - // advancing state + // the 2 constrained federates will not receive it because they have not + // advanced to the scheduled time // federateAmbassadors.get(3).checkAttributeValuesNotReceived( objectInstanceHandle); federateAmbassadors.get(4).checkAttributeValuesNotReceived( objectInstanceHandle); - rtiAmbassadors.get(2).timeAdvanceRequest(nine); - rtiAmbassadors.get(3).timeAdvanceRequest(nine); - rtiAmbassadors.get(4).timeAdvanceRequest(nine); + rtiAmbassadors.get(2).timeAdvanceRequest(eleven); + rtiAmbassadors.get(3).timeAdvanceRequest(eleven); + rtiAmbassadors.get(4).timeAdvanceRequest(eleven); - federateAmbassadors.get(2).checkTimeAdvanceGrant(nine); - federateAmbassadors.get(3).checkTimeAdvanceGrant(nine); - federateAmbassadors.get(4).checkTimeAdvanceGrant(nine); + federateAmbassadors.get(2).checkTimeAdvanceGrant(eleven); + federateAmbassadors.get(3).checkTimeAdvanceGrant(eleven); + federateAmbassadors.get(4).checkTimeAdvanceGrant(eleven); // the 2 constrained federates will not receive it because they have not // advanced to the scheduled time @@ -749,13 +766,13 @@ // bring all the federates to the same time // - rtiAmbassadors.get(2).timeAdvanceRequest(ten); - rtiAmbassadors.get(3).timeAdvanceRequest(ten); - rtiAmbassadors.get(4).timeAdvanceRequest(ten); + rtiAmbassadors.get(2).timeAdvanceRequest(twelve); + rtiAmbassadors.get(3).timeAdvanceRequest(twelve); + rtiAmbassadors.get(4).timeAdvanceRequest(twelve); - federateAmbassadors.get(2).checkTimeAdvanceGrant(ten); - federateAmbassadors.get(3).checkTimeAdvanceGrant(ten); - federateAmbassadors.get(4).checkTimeAdvanceGrant(ten); + federateAmbassadors.get(2).checkTimeAdvanceGrant(twelve); + federateAmbassadors.get(3).checkTimeAdvanceGrant(twelve); + federateAmbassadors.get(4).checkTimeAdvanceGrant(twelve); // attribute values should have been released // @@ -768,20 +785,25 @@ { rtiAmbassadors.get(2).deleteObjectInstance(objectInstanceHandle, null); - // bring all the federates to the same time + // advance constrained federates so they will be sure to receive the + // update (because they will be waiting for the remaining regulating + // federate to advance) // - rtiAmbassadors.get(2).timeAdvanceRequest(fifteen); rtiAmbassadors.get(3).timeAdvanceRequest(fifteen); rtiAmbassadors.get(4).timeAdvanceRequest(fifteen); - federateAmbassadors.get(2).checkTimeAdvanceGrant(fifteen); - federateAmbassadors.get(3).checkTimeAdvanceGrant(fifteen); - federateAmbassadors.get(4).checkTimeAdvanceGrant(fifteen); - federateAmbassadors.get(3).checkForRemovedObjectInstanceHandle( objectInstanceHandle); federateAmbassadors.get(4).checkForRemovedObjectInstanceHandle( objectInstanceHandle); + + // finish time advance + // + rtiAmbassadors.get(2).timeAdvanceRequest(fifteen); + + federateAmbassadors.get(2).checkTimeAdvanceGrant(fifteen); + federateAmbassadors.get(3).checkTimeAdvanceGrant(fifteen); + federateAmbassadors.get(4).checkTimeAdvanceGrant(fifteen); } } @@ -1062,6 +1084,17 @@ } @Override + public void removeObjectInstance(ObjectInstanceHandle objectInstanceHandle, + byte[] tag, OrderType sentOrderType, + LogicalTime deleteTime, + OrderType receivedOrderType, + MessageRetractionHandle messageRetractionHandle) + throws ObjectInstanceNotKnown, InvalidLogicalTime, FederateInternalError + { + objectInstances.get(objectInstanceHandle).setRemoved(true); + } + + @Override public void receiveInteraction( InteractionClassHandle interactionClassHandle, ParameterHandleValueMap parameterValues, @@ -1123,134 +1156,4 @@ this.removed = removed; } } -// public void test() -// { -// TimeClient tc = new TimeClient("A", new Integer64TimeInterval(3000), false); -// TimeClient tc2 = new TimeClient("B", new Integer64TimeInterval(5000), true); -//// TimeClient tc3 = new TimeClient(35000); -// -// tc.timeAdvanceGrant(time); -// tc2.timeAdvanceGrant(time); -// -// tc.start(); -// tc2.start(); -//// tc3.start(); -// -// new Thread() -// { -// public void run() -// { -// int i = 0; -// while (true) -// { -// log.debug(String.format("[%d] %s", i++, time)); -// try -// { -// Thread.sleep(1000); -// } -// catch (InterruptedException e) -// { -// e.printStackTrace(); -// } -// } -// } -// }.start(); -// } -// -// protected class TimeClient -// extends Thread -// { -// protected Logger log; -// -// protected String name; -// protected Integer6... [truncated message content] |
From: <mne...@us...> - 2007-02-13 03:51:12
|
Revision: 120 http://svn.sourceforge.net/ohla/?rev=120&view=rev Author: mnewcomb Date: 2007-02-12 19:51:11 -0800 (Mon, 12 Feb 2007) Log Message: ----------- - refactoring Modified Paths: -------------- trunk/build/build.xml trunk/build/intellij/OHLA.iws trunk/rti/src/java/net/sf/ohla/rti1516/federate/FederateRestore.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/FederateSave.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/LocalFederate.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/LocalMessageRetractionManager.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/LocalRegionManager.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/LocalSynchronizationPoint.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/LocalTimeManager.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/SubscriptionManager.java Removed Paths: ------------- trunk/rti/src/java/net/sf/ohla/rti1516/federate/FederateRestoreState.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/FederateSaveState.java Modified: trunk/build/build.xml =================================================================== --- trunk/build/build.xml 2007-02-13 03:29:52 UTC (rev 119) +++ trunk/build/build.xml 2007-02-13 03:51:11 UTC (rev 120) @@ -322,17 +322,8 @@ <jvmarg value="-ea"/> - <jvmarg value="-Dohla.rti.host=localhost"/> - <jvmarg value="-Dohla.rti.port=5000"/> - - <!--<jvmarg value="-Dohla.federate.Test Federate.host=localhost"/>--> - <!--<jvmarg value="-Dohla.federate.Test Federate.port=5001"/>--> -<!----> - <!--<jvmarg value="-Dohla.federate.Test Federate2.host=localhost"/>--> - <!--<jvmarg value="-Dohla.federate.Test Federate2.port=5002"/>--> -<!----> - <!--<jvmarg value="-Dohla.federate.Test Federate3.host=localhost"/>--> - <!--<jvmarg value="-Dohla.federate.Test Federate3.port=5003"/>--> + <sysproperty key="ohla.rti.host" value="localhost"/> + <sysproperty key="ohla.rti.port" value="5000"/> </testng> </target> @@ -356,17 +347,17 @@ <jvmarg value="-ea"/> - <jvmarg value="-Dohla.rti.host=localhost"/> - <jvmarg value="-Dohla.rti.port=5000"/> + <sysproperty key="ohla.rti.host" value="localhost"/> + <sysproperty key="ohla.rti.port" value="5000"/> <sysproperty key="ohla.federate.rti.logicalTimeFactory" value="net.sf.ohla.rti.Integer64TimeFactory"/> <sysproperty key="ohla.federate.rti.logicalTimeIntervalFactory" value="net.sf.ohla.rti.Integer64TimeIntervalFactory"/> <sysproperty key="ohla.federate.rti1516.logicalTimeFactory" - value="net.sf.ohla.rti1516.Integer64TimeFactory"/> + value="net.sf.ohla.rti1516.impl.Integer64TimeFactory"/> <sysproperty key="ohla.federate.rti1516.logicalTimeIntervalFactory" - value="net.sf.ohla.rti1516.Integer64TimeIntervalFactory"/> + value="net.sf.ohla.rti1516.impl.Integer64TimeIntervalFactory"/> </testng> </target> Modified: trunk/build/intellij/OHLA.iws =================================================================== --- trunk/build/intellij/OHLA.iws 2007-02-13 03:29:52 UTC (rev 119) +++ trunk/build/intellij/OHLA.iws 2007-02-13 03:51:11 UTC (rev 120) @@ -20,15 +20,24 @@ </component> <component name="ChangeListManager"> <list default="true" name="Default" comment=""> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../resources/logback-test.xml" afterPath="$PROJECT_DIR$/../../resources/logback-test.xml" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../resources/testsuite/ieee-1516-testng.xml" afterPath="$PROJECT_DIR$/../../resources/testsuite/ieee-1516-testng.xml" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/Federate.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/Federate.java" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/messages/callbacks/TimeAdvanceGrant.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/messages/callbacks/TimeAdvanceGrant.java" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/TimeManagementTestNG.java" afterPath="$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/TimeManagementTestNG.java" /> + <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\federate\FederateRestoreState.java" afterPath="" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalMessageRetractionManager.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalMessageRetractionManager.java" /> + <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\local\objects\AttributeInstance.java" afterPath="" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalFederate.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalFederate.java" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateRestore.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateRestore.java" /> + <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\local\objects\ObjectManager.java" afterPath="" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateSave.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateSave.java" /> + <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\federate\FederateSaveState.java" afterPath="" /> + <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\local\objects\ObjectInstance.java" afterPath="" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../build.xml" afterPath="$PROJECT_DIR$/../build.xml" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/SubscriptionManager.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/SubscriptionManager.java" /> <change type="MODIFICATION" beforePath="$PROJECT_DIR$/OHLA.iws" afterPath="$PROJECT_DIR$/OHLA.iws" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalTimeManager.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalTimeManager.java" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalRegionManager.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalRegionManager.java" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalSynchronizationPoint.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalSynchronizationPoint.java" /> </list> <list name="Failed commit: Default" comment="- removed log4j" /> + <list name="Failed commit: Default (2)" comment="- refactoring" /> </component> <component name="ChangeListSynchronizer" /> <component name="ChangesViewManager" flattened_view="true" /> @@ -223,98 +232,82 @@ </component> <component name="FileEditorManager"> <leaf> - <file leaf-file-name="Federate.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/Federate.java"> + <file leaf-file-name="FederateRestore.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateRestore.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="428" column="14" selection-start="16700" selection-end="16700" vertical-scroll-proportion="0.33252132"> - <folding> - <element signature="imports" expanded="true" /> - </folding> - </state> - </provider> - </entry> - </file> - <file leaf-file-name="ObjectManagementTestNG.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java"> - <provider selected="true" editor-type-id="text-editor"> - <state line="15" column="0" selection-start="605" selection-end="605" vertical-scroll-proportion="0.020706456"> + <state line="18" column="13" selection-start="658" selection-end="658" vertical-scroll-proportion="0.12431444"> <folding /> </state> </provider> </entry> </file> - <file leaf-file-name="TimeAdvanceGrant.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/messages/callbacks/TimeAdvanceGrant.java"> + <file leaf-file-name="FederateSave.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateSave.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="35" column="3" selection-start="1062" selection-end="1062" vertical-scroll-proportion="0.35200974"> + <state line="16" column="13" selection-start="619" selection-end="619" vertical-scroll-proportion="0.06390978"> <folding /> </state> </provider> </entry> </file> - <file leaf-file-name="TimeManager.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/time/TimeManager.java"> + <file leaf-file-name="LocalFederate.java" pinned="false" current="true" current-in-tab="true"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalFederate.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="675" column="14" selection-start="18064" selection-end="18064" vertical-scroll-proportion="0.39464068"> - <folding /> + <state line="1040" column="50" selection-start="33230" selection-end="33230" vertical-scroll-proportion="0.7612782"> + <folding> + <element signature="imports" expanded="true" /> + </folding> </state> </provider> </entry> </file> - <file leaf-file-name="OHLARTIambassador.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/OHLARTIambassador.java"> + <file leaf-file-name="LocalMessageRetractionManager.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalMessageRetractionManager.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="2938" column="0" selection-start="79846" selection-end="79846" vertical-scroll-proportion="0.020706456"> + <state line="0" column="36" selection-start="28" selection-end="36" vertical-scroll-proportion="0.0"> <folding /> </state> </provider> </entry> </file> - <file leaf-file-name="TestObjectModel.xml" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../resources/testsuite/TestObjectModel.xml"> + <file leaf-file-name="LocalRegionManager.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalRegionManager.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0"> + <state line="0" column="36" selection-start="36" selection-end="36" vertical-scroll-proportion="0.0"> <folding /> </state> </provider> </entry> </file> - <file leaf-file-name="TimeManagementTestNG.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/TimeManagementTestNG.java"> + <file leaf-file-name="LocalSynchronizationPoint.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalSynchronizationPoint.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0"> + <state line="16" column="36" selection-start="642" selection-end="642" vertical-scroll-proportion="0.06390978"> <folding /> </state> </provider> </entry> </file> - <file leaf-file-name="ieee-1516-testng.xml" pinned="false" current="true" current-in-tab="true"> - <entry file="file://$PROJECT_DIR$/../../resources/testsuite/ieee-1516-testng.xml"> + <file leaf-file-name="LocalTimeManager.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalTimeManager.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="22" column="9" selection-start="909" selection-end="909" vertical-scroll-proportion="0.041412912"> - <folding /> + <state line="21" column="35" selection-start="788" selection-end="788" vertical-scroll-proportion="0.2236842"> + <folding> + <element signature="imports" expanded="true" /> + </folding> </state> </provider> </entry> </file> - <file leaf-file-name="logback-test.xml" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../resources/logback-test.xml"> + <file leaf-file-name="SubscriptionManager.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/SubscriptionManager.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="24" column="46" selection-start="945" selection-end="945" vertical-scroll-proportion="0.35200974"> + <state line="16" column="36" selection-start="642" selection-end="642" vertical-scroll-proportion="0.06390978"> <folding /> </state> </provider> </entry> </file> - <file leaf-file-name="build.xml" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../build.xml"> - <provider selected="true" editor-type-id="text-editor"> - <state line="44" column="0" selection-start="1897" selection-end="1897" vertical-scroll-proportion="0.020706456"> - <folding /> - </state> - </provider> - </entry> - </file> </leaf> </component> <component name="FindManager"> @@ -403,10 +396,6 @@ <option name="myItemId" value="OHLA.ipr" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="Testsuite" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> </PATH> <PATH> <PATH_ELEMENT> @@ -414,62 +403,6 @@ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> </PATH_ELEMENT> <PATH_ELEMENT> - <option name="myItemId" value="Testsuite" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src\java" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src\java\net\sf\ohla" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src\java\net\sf\ohla\rti1516" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="Testsuite" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src\java" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\testsuite\src\java\net\sf\ohla" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> <option name="myItemId" value="RTI" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> </PATH_ELEMENT> @@ -529,14 +462,6 @@ <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java\net\sf\ohla" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\handles" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> </PATH> <PATH> <PATH_ELEMENT> @@ -559,286 +484,14 @@ <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java\net\sf\ohla" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\federation" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="RTI" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java\net\sf\ohla" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\federation" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\federation\time" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="RTI" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java\net\sf\ohla" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="RTI" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java\hla\rti1516\jlc\omt" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\thirdparty" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\thirdparty" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\thirdparty\slf4j" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\thirdparty" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\thirdparty\slf4j" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\thirdparty\slf4j\lib" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\thirdparty" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\thirdparty\logback" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\thirdparty" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\thirdparty\logback" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\thirdparty\logback\lib" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\thirdparty" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\thirdparty\apache" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\thirdparty\apache\mina" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - </PATH> </subPane> </component> <component name="ProjectReloadState"> <option name="STATE" value="0" /> </component> <component name="ProjectView"> - <navigator currentView="Scope" currentSubView="Project" proportions="0.16666667" version="1" splitterProportion="0.5"> + <navigator currentView="ProjectPane" proportions="0.16666667" version="1" splitterProportion="0.5"> <flattenPackages ProjectPane="false" /> <showMembers /> <showModules /> @@ -864,8 +517,8 @@ <property name="cvs_file_history_flatOrder1" value="1" /> <property name="cvs_file_history_flatWidth1" value="299" /> <property name="cvs_file_history_treeWidth1" value="299" /> - <property name="cvs_file_history_treeOrder2" value="2" /> <property name="cvs_file_history_treeWidth3" value="298" /> + <property name="cvs_file_history_treeOrder2" value="2" /> <property name="GoToClass.includeLibraries" value="false" /> <property name="cvs_file_history_flatOrder2" value="2" /> <property name="MemberChooser.showClasses" value="true" /> @@ -874,30 +527,23 @@ <property name="cvs_file_history_treeWidth2" value="299" /> <property name="cvs_file_history_flatOrder3" value="3" /> <property name="GoToClass.toSaveIncludeLibraries" value="false" /> - <property name="RunManagerConfig.showSettingsBeforeRunnig" value="true" /> <property name="cvs_file_history_treeOrder0" value="0" /> + <property name="RunManagerConfig.showSettingsBeforeRunnig" value="true" /> </component> <component name="ReadonlyStatusHandler"> <option name="SHOW_DIALOG" value="true" /> </component> <component name="RecentsManager"> <key name="MoveClassesOrPackagesDialog.RECENTS_KEY"> - <recent name="net.sf.ohla.rti1516.messages" /> - <recent name="net.sf.ohla" /> - <recent name="net.sf.ohla.rti" /> <recent name="net.sf.ohla.rti1516" /> - <recent name="net.sf.ohla.rti.ieee1516.impl.jlc" /> + <recent name="net.sf.ohla.rti1516.impl" /> + <recent name="net.sf.ohla.rti1516.federate" /> + <recent name="net.sf.ohla.rti1516.federation" /> + <recent name="net.sf.ohla.rti1516.messages" /> </key> </component> <component name="RestoreUpdateTree" /> <component name="RunManager" selected="Application.RTI"> - <configuration default="true" type="Remote" factoryName="Remote"> - <option name="USE_SOCKET_TRANSPORT" value="true" /> - <option name="SERVER_MODE" value="false" /> - <option name="SHMEM_ADDRESS" value="javadebug" /> - <option name="HOST" value="localhost" /> - <option name="PORT" value="5005" /> - </configuration> <configuration default="true" type="Applet" factoryName="Applet"> <module name="" /> <option name="MAIN_CLASS_NAME" /> @@ -910,6 +556,13 @@ <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" /> <option name="ALTERNATIVE_JRE_PATH" /> </configuration> + <configuration default="true" type="Remote" factoryName="Remote"> + <option name="USE_SOCKET_TRANSPORT" value="true" /> + <option name="SERVER_MODE" value="false" /> + <option name="SHMEM_ADDRESS" value="javadebug" /> + <option name="HOST" value="localhost" /> + <option name="PORT" value="5005" /> + </configuration> <configuration default="true" type="Application" factoryName="Application" enabled="false" merge="false"> <option name="MAIN_CLASS_NAME" /> <option name="VM_PARAMETERS" /> @@ -1039,144 +692,12 @@ <option name="myItemId" value="" /> <option name="myItemType" value="" /> </PATH_ELEMENT> - <PATH_ELEMENT USER_OBJECT="Testsuite"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - <PATH_ELEMENT USER_OBJECT="testsuite/src/java/net/sf/ohla"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - <PATH_ELEMENT USER_OBJECT="rti1516"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> </PATH> <PATH> <PATH_ELEMENT USER_OBJECT="Root"> <option name="myItemId" value="" /> <option name="myItemType" value="" /> </PATH_ELEMENT> - <PATH_ELEMENT USER_OBJECT="Testsuite"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - <PATH_ELEMENT USER_OBJECT="testsuite/src/java/net/sf/ohla"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT USER_OBJECT="Root"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - <PATH_ELEMENT USER_OBJECT="RTI"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - <PATH_ELEMENT USER_OBJECT="rti/src/java"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - <PATH_ELEMENT USER_OBJECT="net/sf/ohla"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - <PATH_ELEMENT USER_OBJECT="rti1516"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT USER_OBJECT="Root"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - <PATH_ELEMENT USER_OBJECT="RTI"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - <PATH_ELEMENT USER_OBJECT="rti/src/java"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - <PATH_ELEMENT USER_OBJECT="net/sf/ohla"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - <PATH_ELEMENT USER_OBJECT="rti1516"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - <PATH_ELEMENT USER_OBJECT="federation"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT USER_OBJECT="Root"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - <PATH_ELEMENT USER_OBJECT="RTI"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - <PATH_ELEMENT USER_OBJECT="rti/src/java"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - <PATH_ELEMENT USER_OBJECT="net/sf/ohla"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - <PATH_ELEMENT USER_OBJECT="rti1516"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - <PATH_ELEMENT USER_OBJECT="federate"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT USER_OBJECT="Root"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - <PATH_ELEMENT USER_OBJECT="RTI"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - <PATH_ELEMENT USER_OBJECT="rti/src/java"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - <PATH_ELEMENT USER_OBJECT="net/sf/ohla"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT USER_OBJECT="Root"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - <PATH_ELEMENT USER_OBJECT="RTI"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - <PATH_ELEMENT USER_OBJECT="rti/src/java"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - </PATH> - <PATH> - <PATH_ELEMENT USER_OBJECT="Root"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> <PATH_ELEMENT USER_OBJECT="OHLA"> <option name="myItemId" value="" /> <option name="myItemType" value="" /> @@ -1226,12 +747,6 @@ <option name="myItemType" value="" /> </PATH_ELEMENT> </PATH> - <PATH> - <PATH_ELEMENT USER_OBJECT="Root"> - <option name="myItemId" value="" /> - <option name="myItemType" value="" /> - </PATH_ELEMENT> - </PATH> </subPane> </component> <component name="SelectInManager" /> @@ -1300,23 +815,23 @@ </todo-panel> </component> <component name="ToolWindowManager"> - <frame x="-4" y="-4" width="1288" height="998" extended-state="6" /> + <frame x="-4" y="-4" width="1032" height="742" extended-state="6" /> <editor active="false" /> <layout> <window_info id="UI Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" /> <window_info id="CVS" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" /> <window_info id="IDEtalk" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" /> - <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32791588" order="7" /> - <window_info id="Project" active="true" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.30738038" order="0" /> - <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.34367815" order="1" /> + <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32736155" order="7" /> + <window_info id="Project" active="true" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.3623337" order="0" /> + <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.45276874" order="1" /> <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" order="1" /> - <window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32413793" order="8" /> + <window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32247558" order="8" /> <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" order="6" /> <window_info id="Module Dependencies" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" /> <window_info id="Dependency Viewer" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32988507" order="8" /> <window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" /> <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.15490673" order="1" /> - <window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" /> + <window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32899022" order="8" /> <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.27816093" order="2" /> <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" order="2" /> <window_info id="File View" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" /> @@ -1356,12 +871,12 @@ </component> <component name="VcsManagerConfiguration"> <option name="OFFER_MOVE_TO_ANOTHER_CHANGELIST_ON_PARTIAL_COMMIT" value="true" /> - <option name="CHECK_CODE_SMELLS_BEFORE_PROJECT_COMMIT" value="true" /> + <option name="CHECK_CODE_SMELLS_BEFORE_PROJECT_COMMIT" value="false" /> <option name="PERFORM_UPDATE_IN_BACKGROUND" value="false" /> <option name="PERFORM_COMMIT_IN_BACKGROUND" value="false" /> <option name="PUT_FOCUS_INTO_COMMENT" value="false" /> <option name="FORCE_NON_EMPTY_COMMENT" value="false" /> - <option name="LAST_COMMIT_MESSAGE" value="- all but 1 time management test passes" /> + <option name="LAST_COMMIT_MESSAGE" value="- refactoring" /> <option name="SAVE_LAST_COMMIT_MESSAGE" value="true" /> <option name="CHECKIN_DIALOG_SPLITTER_PROPORTION" value="0.8" /> <option name="OPTIMIZE_IMPORTS_BEFORE_PROJECT_COMMIT" value="false" /> @@ -1374,16 +889,16 @@ <option name="UPDATE_GROUP_BY_PACKAGES" value="false" /> <option name="SHOW_FILE_HISTORY_AS_TREE" value="false" /> <option name="FILE_HISTORY_SPLITTER_PROPORTION" value="0.6" /> - <MESSAGE value="- fix for removed statics from RTI.java" /> - <MESSAGE value="removed duplicate text from thrown exceptions" /> - <MESSAGE value="- almost complete refactor to centralized RTI" /> - <MESSAGE value="- starting tests for centralized RTI" /> <MESSAGE value="- added a default socket acceptor" /> <MESSAGE value="- check sent region handles for null or isEmpty" /> <MESSAGE value="- Federation Management, Support Services, Declaration Management, and Object Management unit test cases passing" /> <MESSAGE value="- removed uncessary delay" /> <MESSAGE value="- removed log4j" /> <MESSAGE value="- all but 1 time management test passes" /> + <MESSAGE value="- all tests passing" /> + <MESSAGE value="- added HLA 1.3 LogicalTime factory properties" /> + <MESSAGE value="- removed extra lock on the Time lock" /> + <MESSAGE value="- refactoring" /> </component> <component name="VssConfiguration"> <option name="CLIENT_PATH" value="" /> @@ -1466,113 +981,101 @@ <option name="myLastEditedConfigurable" /> </component> <component name="editorHistoryManager"> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/OwnershipManagementTestNG.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="550" column="0" selection-start="19642" selection-end="19642" vertical-scroll-proportion="0.020706456"> + <state line="265" column="38" selection-start="9856" selection-end="9856" vertical-scroll-proportion="0.029929578"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/SupportServicesTestNG.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/Federate.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="43" column="13" selection-start="1566" selection-end="1566" vertical-scroll-proportion="0.020706456"> + <state line="150" column="0" selection-start="4647" selection-end="4647" vertical-scroll-proportion="0.029929578"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java"> + <entry file="file://$PROJECT_DIR$/../build.xml"> <provider selected="true" editor-type-id="text-editor"> - <state line="152" column="0" selection-start="7195" selection-end="7239" vertical-scroll-proportion="0.020706456"> + <state line="326" column="0" selection-start="11921" selection-end="11921" vertical-scroll-proportion="0.029929578"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/RTI.java"> + <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/BaseTestNG.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="109" column="28" selection-start="3668" selection-end="3668" vertical-scroll-proportion="0.020706456"> + <state line="18" column="0" selection-start="636" selection-end="636" vertical-scroll-proportion="0.02915952"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/OHLARTIambassador.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/objects/AttributeInstance.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="2938" column="0" selection-start="79846" selection-end="79846" vertical-scroll-proportion="0.020706456"> + <state line="30" column="13" selection-start="1035" selection-end="1035" vertical-scroll-proportion="0.18545455"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../build.xml"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateSave.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="44" column="0" selection-start="1897" selection-end="1897" vertical-scroll-proportion="0.020706456"> + <state line="16" column="13" selection-start="619" selection-end="619" vertical-scroll-proportion="0.06390978"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../resources/logback-test.xml"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalMessageRetractionManager.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="24" column="46" selection-start="945" selection-end="945" vertical-scroll-proportion="0.35200974"> + <state line="0" column="36" selection-start="28" selection-end="36" vertical-scroll-proportion="0.0"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/time/TimeManager.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalRegionManager.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="675" column="14" selection-start="18064" selection-end="18064" vertical-scroll-proportion="0.39464068"> + <state line="0" column="36" selection-start="36" selection-end="36" vertical-scroll-proportion="0.0"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/Federate.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalSynchronizationPoint.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="78" column="0" selection-start="3168" selection-end="3201" vertical-scroll-proportion="0.020706456"> + <state line="16" column="36" selection-start="642" selection-end="642" vertical-scroll-proportion="0.06390978"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/messages/callbacks/TimeAdvanceGrant.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/SubscriptionManager.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="35" column="3" selection-start="1062" selection-end="1062" vertical-scroll-proportion="0.35200974"> + <state line="16" column="36" selection-start="642" selection-end="642" vertical-scroll-proportion="0.06390978"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/Federate.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalTimeManager.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="428" column="14" selection-start="16700" selection-end="16700" vertical-scroll-proportion="0.33252132"> + <state line="21" column="35" selection-start="788" selection-end="788" vertical-scroll-proportion="0.2236842"> <folding> <element signature="imports" expanded="true" /> </folding> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/ObjectManagementTestNG.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateRestore.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="15" column="0" selection-start="605" selection-end="605" vertical-scroll-proportion="0.020706456"> + <state line="18" column="13" selection-start="658" selection-end="658" vertical-scroll-proportion="0.12431444"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../resources/testsuite/TestObjectModel.xml"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalFederate.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0"> - <folding /> + <state line="1040" column="50" selection-start="33230" selection-end="33230" vertical-scroll-proportion="0.7612782"> + <folding> + <element signature="imports" expanded="true" /> + </folding> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../testsuite/src/java/net/sf/ohla/rti1516/TimeManagementTestNG.java"> - <provider selected="true" editor-type-id="text-editor"> - <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0"> - <folding /> - </state> - </provider> - </entry> - <entry file="file://$PROJECT_DIR$/../../resources/testsuite/ieee-1516-testng.xml"> - <provider selected="true" editor-type-id="text-editor"> - <state line="22" column="9" selection-start="909" selection-end="909" vertical-scroll-proportion="0.041412912"> - <folding /> - </state> - </provider> - </entry> </component> <component name="o... [truncated message content] |
From: <mne...@us...> - 2007-02-13 03:53:01
|
Revision: 121 http://svn.sourceforge.net/ohla/?rev=121&view=rev Author: mnewcomb Date: 2007-02-12 19:53:01 -0800 (Mon, 12 Feb 2007) Log Message: ----------- - refactoring Modified Paths: -------------- trunk/build/intellij/OHLA.iws trunk/rti/src/java/net/sf/ohla/rti/OHLARTIambassador.java trunk/rti/src/java/net/sf/ohla/rti1516/OHLARTIambassador.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectManager.java trunk/rti/src/java/net/sf/ohla/rti1516/messages/callbacks/CallbackManager.java Added Paths: ----------- trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/FederateMessageRetractionManager.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/FederateRegionManager.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/FederateSynchronizationPoint.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/FederateTimeManager.java Removed Paths: ------------- trunk/rti/src/java/net/sf/ohla/rti1516/federate/LocalFederate.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/LocalMessageRetractionManager.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/LocalRegionManager.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/LocalSynchronizationPoint.java trunk/rti/src/java/net/sf/ohla/rti1516/federate/LocalTimeManager.java Modified: trunk/build/intellij/OHLA.iws =================================================================== --- trunk/build/intellij/OHLA.iws 2007-02-13 03:51:11 UTC (rev 120) +++ trunk/build/intellij/OHLA.iws 2007-02-13 03:53:01 UTC (rev 121) @@ -20,21 +20,24 @@ </component> <component name="ChangeListManager"> <list default="true" name="Default" comment=""> - <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\federate\FederateRestoreState.java" afterPath="" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalMessageRetractionManager.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalMessageRetractionManager.java" /> + <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/Federate.java" /> + <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\federate\LocalRegionManager.java" afterPath="" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/messages/callbacks/CallbackManager.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/messages/callbacks/CallbackManager.java" /> + <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\federate\LocalMessageRetractionManager.java" afterPath="" /> + <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateMessageRetractionManager.java" /> <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\local\objects\AttributeInstance.java" afterPath="" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalFederate.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalFederate.java" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateRestore.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateRestore.java" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectManager.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectManager.java" /> + <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\federate\LocalTimeManager.java" afterPath="" /> <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\local\objects\ObjectManager.java" afterPath="" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateSave.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateSave.java" /> - <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\federate\FederateSaveState.java" afterPath="" /> + <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateSynchronizationPoint.java" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/OHLARTIambassador.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/OHLARTIambassador.java" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti/OHLARTIambassador.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti/OHLARTIambassador.java" /> + <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateTimeManager.java" /> + <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\federate\LocalSynchronizationPoint.java" afterPath="" /> <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\local\objects\ObjectInstance.java" afterPath="" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../build.xml" afterPath="$PROJECT_DIR$/../build.xml" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/SubscriptionManager.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/SubscriptionManager.java" /> <change type="MODIFICATION" beforePath="$PROJECT_DIR$/OHLA.iws" afterPath="$PROJECT_DIR$/OHLA.iws" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalTimeManager.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalTimeManager.java" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalRegionManager.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalRegionManager.java" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalSynchronizationPoint.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalSynchronizationPoint.java" /> + <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateRegionManager.java" /> + <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\federate\LocalFederate.java" afterPath="" /> </list> <list name="Failed commit: Default" comment="- removed log4j" /> <list name="Failed commit: Default (2)" comment="- refactoring" /> @@ -250,10 +253,10 @@ </provider> </entry> </file> - <file leaf-file-name="LocalFederate.java" pinned="false" current="true" current-in-tab="true"> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalFederate.java"> + <file leaf-file-name="Federate.java" pinned="false" current="true" current-in-tab="true"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/Federate.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="1040" column="50" selection-start="33230" selection-end="33230" vertical-scroll-proportion="0.7612782"> + <state line="265" column="33" selection-start="11524" selection-end="11524" vertical-scroll-proportion="0.15413533"> <folding> <element signature="imports" expanded="true" /> </folding> @@ -261,8 +264,8 @@ </provider> </entry> </file> - <file leaf-file-name="LocalMessageRetractionManager.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalMessageRetractionManager.java"> + <file leaf-file-name="FederateMessageRetractionManager.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateMessageRetractionManager.java"> <provider selected="true" editor-type-id="text-editor"> <state line="0" column="36" selection-start="28" selection-end="36" vertical-scroll-proportion="0.0"> <folding /> @@ -270,8 +273,8 @@ </provider> </entry> </file> - <file leaf-file-name="LocalRegionManager.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalRegionManager.java"> + <file leaf-file-name="FederateRegionManager.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateRegionManager.java"> <provider selected="true" editor-type-id="text-editor"> <state line="0" column="36" selection-start="36" selection-end="36" vertical-scroll-proportion="0.0"> <folding /> @@ -279,8 +282,8 @@ </provider> </entry> </file> - <file leaf-file-name="LocalSynchronizationPoint.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalSynchronizationPoint.java"> + <file leaf-file-name="FederateSynchronizationPoint.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateSynchronizationPoint.java"> <provider selected="true" editor-type-id="text-editor"> <state line="16" column="36" selection-start="642" selection-end="642" vertical-scroll-proportion="0.06390978"> <folding /> @@ -288,8 +291,8 @@ </provider> </entry> </file> - <file leaf-file-name="LocalTimeManager.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalTimeManager.java"> + <file leaf-file-name="FederateTimeManager.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateTimeManager.java"> <provider selected="true" editor-type-id="text-editor"> <state line="21" column="35" selection-start="788" selection-end="788" vertical-scroll-proportion="0.2236842"> <folding> @@ -462,6 +465,14 @@ <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java\net\sf\ohla" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\federate" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> </PATH> <PATH> <PATH_ELEMENT> @@ -484,7 +495,33 @@ <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java\net\sf\ohla" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> </PATH> + <PATH> + <PATH_ELEMENT> + <option name="myItemId" value="OHLA.ipr" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="RTI" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + <PATH_ELEMENT> + <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java" /> + <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> + </PATH_ELEMENT> + </PATH> </subPane> </component> <component name="ProjectReloadState"> @@ -1023,21 +1060,21 @@ </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalMessageRetractionManager.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateMessageRetractionManager.java"> <provider selected="true" editor-type-id="text-editor"> <state line="0" column="36" selection-start="28" selection-end="36" vertical-scroll-proportion="0.0"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalRegionManager.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateRegionManager.java"> <provider selected="true" editor-type-id="text-editor"> <state line="0" column="36" selection-start="36" selection-end="36" vertical-scroll-proportion="0.0"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalSynchronizationPoint.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateSynchronizationPoint.java"> <provider selected="true" editor-type-id="text-editor"> <state line="16" column="36" selection-start="642" selection-end="642" vertical-scroll-proportion="0.06390978"> <folding /> @@ -1051,7 +1088,7 @@ </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalTimeManager.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateTimeManager.java"> <provider selected="true" editor-type-id="text-editor"> <state line="21" column="35" selection-start="788" selection-end="788" vertical-scroll-proportion="0.2236842"> <folding> @@ -1067,9 +1104,9 @@ </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/LocalFederate.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/Federate.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="1040" column="50" selection-start="33230" selection-end="33230" vertical-scroll-proportion="0.7612782"> + <state line="265" column="33" selection-start="11524" selection-end="11524" vertical-scroll-proportion="0.15413533"> <folding> <element signature="imports" expanded="true" /> </folding> Modified: trunk/rti/src/java/net/sf/ohla/rti/OHLARTIambassador.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti/OHLARTIambassador.java 2007-02-13 03:51:11 UTC (rev 120) +++ trunk/rti/src/java/net/sf/ohla/rti/OHLARTIambassador.java 2007-02-13 03:53:01 UTC (rev 121) @@ -36,7 +36,7 @@ import net.sf.ohla.rti1516.OHLAObjectInstanceHandle; import net.sf.ohla.rti1516.OHLAParameterHandle; import net.sf.ohla.rti1516.OHLARegionHandleSet; -import net.sf.ohla.rti1516.federate.LocalFederate; +import net.sf.ohla.rti1516.federate.Federate; import net.sf.ohla.rti1516.fdd.ObjectClass; import org.slf4j.Logger; @@ -215,7 +215,7 @@ protected LogicalTimeIntervalFactory logicalTimeIntervalFactory; protected hla.rti1516.LogicalTimeIntervalFactory ieee1516LogicalTimeIntervalFactory; - public LocalFederate getJoinedFederate() + public Federate getJoinedFederate() { return rtiAmbassador.getJoinedFederate(); } Modified: trunk/rti/src/java/net/sf/ohla/rti1516/OHLARTIambassador.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/OHLARTIambassador.java 2007-02-13 03:51:11 UTC (rev 120) +++ trunk/rti/src/java/net/sf/ohla/rti1516/OHLARTIambassador.java 2007-02-13 03:53:01 UTC (rev 121) @@ -29,7 +29,7 @@ import java.util.concurrent.locks.ReentrantReadWriteLock; import net.sf.ohla.rti1516.fdd.FDD; -import net.sf.ohla.rti1516.federate.LocalFederate; +import net.sf.ohla.rti1516.federate.Federate; import net.sf.ohla.rti1516.filter.RequestResponseFilter; import net.sf.ohla.rti1516.messages.CreateFederationExecution; import net.sf.ohla.rti1516.messages.DestroyFederationExecution; @@ -193,9 +193,9 @@ */ protected Semaphore callbackSemaphore = new Semaphore(1, true); - protected LocalFederate federate; + protected Federate federate; - public LocalFederate getJoinedFederate() + public Federate getJoinedFederate() { return federate; } @@ -332,7 +332,7 @@ checkIfFederateAlreadyExecutionMember(); federate = - new LocalFederate(federateType, federationName, federateAmbassador, + new Federate(federateType, federationName, federateAmbassador, mobileFederateServices, rtiSession); return federate.getFederateHandle(); Copied: trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java (from rev 120, trunk/rti/src/java/net/sf/ohla/rti1516/federate/LocalFederate.java) =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java (rev 0) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federate/Federate.java 2007-02-13 03:53:01 UTC (rev 121) @@ -0,0 +1,4052 @@ +/* + * Copyright (c) 2006, Michael Newcomb + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.sf.ohla.rti1516.federate; + +import java.util.HashMap; +import java.util.Map; +import java.util.PriorityQueue; +import java.util.Queue; +import java.util.concurrent.Callable; +import java.util.concurrent.ExecutionException; +import java.util.concurrent.Future; +import java.util.concurrent.FutureTask; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReadWriteLock; +import java.util.concurrent.locks.ReentrantLock; +import java.util.concurrent.locks.ReentrantReadWriteLock; + +import net.sf.ohla.rti1516.OHLAAttributeHandleFactory; +import net.sf.ohla.rti1516.OHLAAttributeHandleSetFactory; +import net.sf.ohla.rti1516.OHLAAttributeHandleValueMapFactory; +import net.sf.ohla.rti1516.OHLAAttributeSetRegionSetPairListFactory; +import net.sf.ohla.rti1516.OHLADimensionHandleFactory; +import net.sf.ohla.rti1516.OHLADimensionHandleSetFactory; +import net.sf.ohla.rti1516.OHLAFederateHandleFactory; +import net.sf.ohla.rti1516.OHLAFederateHandleSetFactory; +import net.sf.ohla.rti1516.OHLAInteractionClassHandleFactory; +import net.sf.ohla.rti1516.OHLAObjectClassHandleFactory; +import net.sf.ohla.rti1516.OHLAObjectInstanceHandleFactory; +import net.sf.ohla.rti1516.OHLAParameterHandleFactory; +import net.sf.ohla.rti1516.OHLAParameterHandleValueMapFactory; +import net.sf.ohla.rti1516.OHLARegionHandleSetFactory; +import net.sf.ohla.rti1516.fdd.FDD; +import net.sf.ohla.rti1516.federate.objects.ObjectManager; +import net.sf.ohla.rti1516.messages.FederateRestoreComplete; +import net.sf.ohla.rti1516.messages.FederateRestoreNotComplete; +import net.sf.ohla.rti1516.messages.FederateSaveBegun; +import net.sf.ohla.rti1516.messages.FederateSaveComplete; +import net.sf.ohla.rti1516.messages.FederateSaveNotComplete; +import net.sf.ohla.rti1516.messages.GALTAdvanced; +import net.sf.ohla.rti1516.messages.JoinFederationExecution; +import net.sf.ohla.rti1516.messages.JoinFederationExecutionResponse; +import net.sf.ohla.rti1516.messages.QueryFederationRestoreStatus; +import net.sf.ohla.rti1516.messages.QueryFederationSaveStatus; +import net.sf.ohla.rti1516.messages.RegisterFederationSynchronizationPoint; +import net.sf.ohla.rti1516.messages.RequestAttributeValueUpdate; +import net.sf.ohla.rti1516.messages.RequestFederationRestore; +import net.sf.ohla.rti1516.messages.RequestFederationSave; +import net.sf.ohla.rti1516.messages.Retract; +import net.sf.ohla.rti1516.messages.SendInteraction; +import net.sf.ohla.rti1516.messages.SubscribeObjectClassAttributes; +import net.sf.ohla.rti1516.messages.SynchronizationPointAchieved; +import net.sf.ohla.rti1516.messages.UnsubscribeObjectClassAttributes; +import net.sf.ohla.rti1516.messages.callbacks.Callback; +import net.sf.ohla.rti1516.messages.callbacks.CallbackManager; +import net.sf.ohla.rti1516.messages.callbacks.ReceiveInteraction; +import net.sf.ohla.rti1516.messages.callbacks.ReflectAttributeValues; +import net.sf.ohla.rti1516.messages.callbacks.RemoveObjectInstance; +import net.sf.ohla.rti1516.messages.callbacks.TimeAdvanceGrant; + +import org.apache.mina.common.IoSession; +import org.apache.mina.common.WriteFuture; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.slf4j.Marker; +import org.slf4j.MarkerFactory; + +import hla.rti1516.AsynchronousDeliveryAlreadyDisabled; +import hla.rti1516.AsynchronousDeliveryAlreadyEnabled; +import hla.rti1516.AttributeAcquisitionWasNotCanceled; +import hla.rti1516.AttributeAcquisitionWasNotRequested; +import hla.rti1516.AttributeAlreadyBeingAcquired; +import hla.rti1516.AttributeAlreadyBeingDivested; +import hla.rti1516.AttributeAlreadyOwned; +import hla.rti1516.AttributeDivestitureWasNotRequested; +import hla.rti1516.AttributeHandle; +import hla.rti1516.AttributeHandleFactory; +import hla.rti1516.AttributeHandleSet; +import hla.rti1516.AttributeHandleSetFactory; +import hla.rti1516.AttributeHandleValueMap; +import hla.rti1516.AttributeHandleValueMapFactory; +import hla.rti1516.AttributeNotDefined; +import hla.rti1516.AttributeNotOwned; +import hla.rti1516.AttributeNotPublished; +import hla.rti1516.AttributeNotRecognized; +import hla.rti1516.AttributeNotSubscribed; +import hla.rti1516.AttributeRegionAssociation; +import hla.rti1516.AttributeRelevanceAdvisorySwitchIsOff; +import hla.rti1516.AttributeRelevanceAdvisorySwitchIsOn; +import hla.rti1516.AttributeScopeAdvisorySwitchIsOff; +import hla.rti1516.AttributeScopeAdvisorySwitchIsOn; +import hla.rti1516.AttributeSetRegionSetPairList; +import hla.rti1516.AttributeSetRegionSetPairListFactory; +import hla.rti1516.CouldNotDiscover; +import hla.rti1516.CouldNotInitiateRestore; +import hla.rti1516.DeletePrivilegeNotHeld; +import hla.rti1516.DimensionHandle; +import hla.rti1516.DimensionHandleFactory; +import hla.rti1516.DimensionHandleSet; +import hla.rti1516.DimensionHandleSetFactory; +import hla.rti1516.FederateAlreadyExecutionMember; +import hla.rti1516.FederateAmbassador; +import hla.rti1516.FederateHandle; +import hla.rti1516.FederateHandleFactory; +import hla.rti1516.FederateHandleRestoreStatusPair; +import hla.rti1516.FederateHandleSaveStatusPair; +import hla.rti1516.FederateHandleSet; +import hla.rti1516.FederateHandleSetFactory; +import hla.rti1516.FederateHasNotBegunSave; +import hla.rti1516.FederateInternalError; +import hla.rti1516.FederateOwnsAttributes; +import hla.rti1516.FederateServiceInvocationsAreBeingReportedViaMOM; +import hla.rti1516.FederateUnableToUseTime; +import hla.rti1516.FederationExecutionDoesNotExist; +import hla.rti1516.IllegalName; +import hla.rti1516.InTimeAdvancingState; +import hla.rti1516.InteractionClassHandle; +import hla.rti1516.InteractionClassHandleFactory; +import hla.rti1516.InteractionClassNotDefined; +import hla.rti1516.InteractionClassNotPublished; +import hla.rti1516.InteractionClassNotRecognized; +import hla.rti1516.InteractionClassNotSubscribed; +import hla.rti1516.InteractionParameterNotDefined; +import hla.rti1516.InteractionParameterNotRecognized; +import hla.rti1516.InteractionRelevanceAdvisorySwitchIsOff; +import hla.rti1516.InteractionRelevanceAdvisorySwitchIsOn; +import hla.rti1516.InvalidAttributeHandle; +import hla.rti1516.InvalidDimensionHandle; +import hla.rti1516.InvalidFederateHandle; +import hla.rti1516.InvalidInteractionClassHandle; +import hla.rti1516.InvalidLogicalTime; +import hla.rti1516.InvalidLookahead; +import hla.rti1516.InvalidMessageRetractionHandle; +import hla.rti1516.InvalidObjectClassHandle; +import hla.rti1516.InvalidOrderName; +import hla.rti1516.InvalidOrderType; +import hla.rti1516.InvalidParameterHandle; +import hla.rti1516.InvalidRangeBound; +import hla.rti1516.InvalidRegion; +import hla.rti1516.InvalidRegionContext; +import hla.rti1516.InvalidTransportationName; +import hla.rti1516.InvalidTransportationType; +import hla.rti1516.JoinedFederateIsNotInTimeAdvancingState; +import hla.rti1516.LogicalTime; +import hla.rti1516.LogicalTimeAlreadyPassed; +import hla.rti1516.LogicalTimeInterval; +import hla.rti1516.MessageCanNoLongerBeRetracted; +import hla.rti1516.MessageRetractionHandle; +import hla.rti1516.MessageRetractionReturn; +import hla.rti1516.MobileFederateServices; +import hla.rti1516.NameNotFound; +import hla.rti1516.NoRequestToEnableTimeConstrainedWasPending; +import hla.rti1516.NoRequestToEnableTimeRegulationWasPending; +import hla.rti1516.ObjectClassHandle; +import hla.rti1516.ObjectClassHandleFactory; +import hla.rti1516.ObjectClassNotDefined; +import hla.rti1516.ObjectClassNotPublished; +import hla.rti1516.ObjectClassNotRecognized; +import hla.rti1516.ObjectClassRelevanceAdvisorySwitchIsOff; +import hla.rti1516.ObjectClassRelevanceAdvisorySwitchIsOn; +import hla.rti1516.ObjectInstanceHandle; +import hla.rti1516.ObjectInstanceHandleFactory; +import hla.rti1516.ObjectInstanceNameInUse; +import hla.rti1516.ObjectInstanceNameNotReserved; +import hla.rti1516.ObjectInstanceNotKnown; +import hla.rti1516.OrderType; +import hla.rti1516.OwnershipAcquisitionPending; +import hla.rti1516.ParameterHandle; +import hla.rti1516.ParameterHandleFactory; +import hla.rti1516.ParameterHandleValueMap; +import hla.rti1516.ParameterHandleValueMapFactory; +import hla.rti1516.RTIinternalError; +import hla.rti1516.RangeBounds; +import hla.rti1516.RegionDoesNotContainSpecifiedDimension; +import hla.rti1516.RegionHandle; +import hla.rti1516.RegionHandleSet; +import hla.rti1516.RegionHandleSetFactory; +import hla.rti1516.RegionInUseForUpdateOrSubscription; +import hla.rti1516.RegionNotCreatedByThisFederate; +import hla.rti1516.RequestForTimeConstrainedPending; +import hla.rti1516.RequestForTimeRegulationPending; +import hla.rti1516.ResignAction; +import hla.rti1516.RestoreFailureReason; +import hla.rti1516.RestoreInProgress; +import hla.rti1516.RestoreNotRequested; +import hla.rti1516.SaveFailureReason; +import hla.rti1516.SaveInProgress; +import hla.rti1516.SaveNotInitiated; +import hla.rti1516.SaveStatus; +import hla.rti1516.ServiceGroup; +import hla.rti1516.SpecifiedSaveLabelDoesNotExist; +import hla.rti1516.SynchronizationPointFailureReason; +import hla.rti1516.SynchronizationPointLabelNotAnnounced; +import hla.rti1516.TimeConstrainedAlreadyEnabled; +import hla.rti1516.TimeConstrainedIsNotEnabled; +import hla.rti1516.TimeQueryReturn; +import hla.rti1516.TimeRegulationAlreadyEnabled; +import hla.rti1516.TimeRegulationIsNotEnabled; +import hla.rti1516.TransportationType; +import hla.rti1516.UnableToPerformSave; +import hla.rti1516.UnknownName; +import hla.rti1516.RestoreStatus; +import hla.rti1516.jlc.NullFederateAmbassador; + +public class Federate +{ + public static final String OHLA_FEDERATE_HOST_PROPERTY = + "ohla.federate.%s.host"; + public static final String OHLA_FEDERATE_PORT_PROPERTY = + "ohla.federate.%s.port"; + + public enum LocalFederateState + { + ACTIVE, SAVE_IN_PROGRESS, RESTORE_IN_PROGRESS + } + + protected final String federateType; + protected final String federationExecutionName; + protected final FederateAmbassador federateAmbassador; + protected final MobileFederateServices mobileFederateServices; + + protected final FederateAmbassador federateAmbassadorInterceptor = + new FederateAmbassadorInterceptor(); + + protected FederateHandle federateHandle; + + protected String federationName; + protected FDD fdd; + + protected LocalFederateState federateState = LocalFederateState.ACTIVE; + + protected ReadWriteLock federateStateLock = + new ReentrantReadWriteLock(true); + + protected SaveStatus saveStatus; + protected FederateSave federateSave; + + protected RestoreStatus restoreStatus; + protected FederateRestore federateRestore; + + protected Lock synchronizationPointLock = new ReentrantLock(true); + protected Map<String, FederateSynchronizationPoint> synchronizationPoints = + new HashMap<String, FederateSynchronizationPoint>(); + + protected boolean asynchronousDeliveryEnabled; + + protected ObjectManager objectManager = new ObjectManager(this); + protected FederateRegionManager regionManager = new FederateRegionManager(this); + protected FederateMessageRetractionManager messageRetractionManager = + new FederateMessageRetractionManager(this); + + protected FederateTimeManager timeManager; + protected CallbackManager callbackManager = new CallbackManager(this); + + protected Lock futureTasksLock = new ReentrantLock(true); + protected Queue<TimestampedFutureTask> futureTasks = + new PriorityQueue<TimestampedFutureTask>(); + + protected AttributeHandleFactory attributeHandleFactory = + new OHLAAttributeHandleFactory(); + protected AttributeHandleSetFactory attributeHandleSetFactory = + new OHLAAttributeHandleSetFactory(); + protected AttributeHandleValueMapFactory attributeHandleValueMapFactory = + new OHLAAttributeHandleValueMapFactory(); + protected AttributeSetRegionSetPairListFactory attributeSetRegionSetPairListFactory = + new OHLAAttributeSetRegionSetPairListFactory(); + protected DimensionHandleFactory dimensionHandleFactory = + new OHLADimensionHandleFactory(); + protected DimensionHandleSetFactory dimensionHandleSetFactory = + new OHLADimensionHandleSetFactory(); + protected FederateHandleFactory federateHandleFactory = + new OHLAFederateHandleFactory(); + protected FederateHandleSetFactory federateHandleSetFactory = + new OHLAFederateHandleSetFactory(); + protected InteractionClassHandleFactory interactionClassHandleFactory = + new OHLAInteractionClassHandleFactory(); + protected ObjectClassHandleFactory objectClassHandleFactory = + new OHLAObjectClassHandleFactory(); + protected ObjectInstanceHandleFactory objectInstanceHandleFactory = + new OHLAObjectInstanceHandleFactory(); + protected ParameterHandleFactory parameterHandleFactory = + new OHLAParameterHandleFactory(); + protected ParameterHandleValueMapFactory parameterHandleValueMapFactory = + new OHLAParameterHandleValueMapFactory(); + protected RegionHandleSetFactory regionHandleSetFactory = + new OHLARegionHandleSetFactory(); + + /** + * The session with the RTI. + */ + protected IoSession rtiSession; + + protected final Logger log = LoggerFactory.getLogger(getClass()); + protected final Marker marker; + + public Federate(String federateType, String federationExecutionName, + FederateAmbassador federateAmbassador, + MobileFederateServices mobileFederateServices, + IoSession rtiSession) + throws FederationExecutionDoesNotExist, SaveInProgress, RestoreInProgress, + RTIinternalError + { + this.federateType = federateType; + this.federationExecutionName = federationExecutionName; + this.federateAmbassador = federateAmbassador; + this.mobileFederateServices = mobileFederateServices; + this.rtiSession = rtiSession; + + marker = MarkerFactory.getMarker(federateType); + + JoinFederationExecution joinFederationExecution = + new JoinFederationExecution( + federateType, federationExecutionName, mobileFederateServices); + WriteFuture writeFuture = rtiSession.write(joinFederationExecution); + + // TODO: set timeout + // + writeFuture.join(); + + if (!writeFuture.isWritten()) + { + throw new RTIinternalError("error communicating with RTI"); + } + + try + { + // TODO: set timeout + // + Object response = joinFederationExecution.getResponse(); + if (response instanceof JoinFederationExecutionResponse) + { + JoinFederationExecutionResponse joinFederationExecutionResponse = + (JoinFederationExecutionResponse) response; + + federateHandle = joinFederationExecutionResponse.getFederateHandle(); + fdd = joinFederationExecutionResponse.getFdd(); + + LogicalTime galt = joinFederationExecutionResponse.getGALT(); + timeManager = new FederateTimeManager(this, mobileFederateServices, galt); + + log.info(marker, "joined federation execution: {}", federateHandle); + } + else if (response instanceof FederationExecutionDoesNotExist) + { + throw new FederationExecutionDoesNotExist( + (FederationExecutionDoesNotExist) response); + } + else if (response instanceof SaveInProgress) + { + throw new SaveInProgress((SaveInProgress) response); + } + else if (response instanceof RestoreInProgress) + { + throw new RestoreInProgress((RestoreInProgress) response); + } + else + { + assert false : String.format("unexpected response: %s", response); + } + } + catch (InterruptedException ie) + { + throw new RTIinternalError("interrupted awaiting timeout", ie); + } + catch (ExecutionException ee) + { + throw new RTIinternalError("unable to get response", ee); + } + } + + public FederateHandle getFederateHandle() + { + return federateHandle; + } + + public FederateAmbassador getFederateAmbassador() + { + return federateAmbassadorInterceptor; + } + + public FDD getFDD() + { + return fdd; + } + + public ObjectManager getObjectManager() + { + return objectManager; + } + + public FederateRegionManager getRegionManager() + { + return regionManager; + } + + public FederateMessageRetractionManager getMessageRetractionManager() + { + return messageRetractionManager; + } + + public FederateTimeManager getTimeManager() + { + return timeManager; + } + + public CallbackManager getCallbackManager() + { + return callbackManager; + } + + public IoSession getRTISession() + { + return rtiSession; + } + + public boolean isAsynchronousDeliveryEnabled() + { + return asynchronousDeliveryEnabled; + } + + public void processFutureTasks(LogicalTime maxFutureTaskTimestamp) + { + futureTasksLock.lock(); + try + { + log.debug(marker, "processing future tasks: {}", maxFutureTaskTimestamp); + + for (TimestampedFutureTask timestampedFutureTask = futureTasks.peek(); + timestampedFutureTask != null && + timestampedFutureTask.getTime().compareTo( + maxFutureTaskTimestamp) <= 0; + timestampedFutureTask = futureTasks.peek()) + { + log.debug(marker, "processing future task: {}", timestampedFutureTask); + + try + { + timestampedFutureTask.run(); + } + catch (Throwable t) + { + log.error(marker, String.format("unable to execute scheduled task: %s", + timestampedFutureTask), t); + } + + futureTasks.poll(); + } + } + finally + { + futureTasksLock.unlock(); + } + } + + public boolean process(IoSession session, Object message) + { + log.debug(marker, "processing: {}", message); + + boolean processed = true; + if (message instanceof Callback) + { + if (message instanceof ReflectAttributeValues) + { + ReflectAttributeValues reflectAttributeValues = + (ReflectAttributeValues) message; + + timeManager.getTimeLock().readLock().lock(); + try + { + OrderType receivedOrderType = + reflectAttributeValues.getSentOrderType() == OrderType.TIMESTAMP && + timeManager.isTimeConstrained() ? OrderType.TIMESTAMP : + OrderType.RECEIVE; + reflectAttributeValues.setReceivedOrderType(receivedOrderType); + + if (receivedOrderType == OrderType.RECEIVE) + { + // receive order callbacks need to be held until released if we + // are constrained and in the time granted state if asynchronous + // delivery is disabled + // + boolean hold = timeManager.isTimeConstrainedAndTimeGranted() && + !isAsynchronousDeliveryEnabled(); + + callbackManager.add(reflectAttributeValues, hold); + } + else + { + // schedule the callback for the appropriate time + // + Future future = schedule( + reflectAttributeValues.getUpdateTime(), + new AddCallback(reflectAttributeValues)); + + // register the message retraction handle + // + messageRetractionManager.add( + reflectAttributeValues.getUpdateTime(), future, + reflectAttributeValues.getMessageRetractionHandle()); + } + } + finally + { + timeManager.getTimeLock().readLock().unlock(); + } + } + else if (message instanceof ReceiveInteraction) + { + ReceiveInteraction receiveInteraction = (ReceiveInteraction) message; + + timeManager.getTimeLock().readLock().lock(); + try + { + OrderType receivedOrderType = + receiveInteraction.getSentOrderType() == OrderType.TIMESTAMP && + timeManager.isTimeConstrained() ? OrderType.TIMESTAMP : + OrderType.RECEIVE; + + receiveInteraction.setReceivedOrderType(receivedOrderType); + + if (receivedOrderType == OrderType.RECEIVE) + { + // receive order callbacks need to be held until released if we + // are constrained and in the time granted state, if asynchronous + // delivery is disabled + // + boolean hold = timeManager.isTimeConstrainedAndTimeGranted() && + !isAsynchronousDeliveryEnabled(); + + callbackManager.add(receiveInteraction, hold); + } + else + { + // schedule the callback for the appropriate time + // + Future future = schedule(receiveInteraction.getSendTime(), + new AddCallback(receiveInteraction)); + + // register the message retraction handle + // + messageRetractionManager.add( + receiveInteraction.getSendTime(), future, + receiveInteraction.getMessageRetractionHandle()); + } + } + finally + { + timeManager.getTimeLock().readLock().unlock(); + } + } + else if (message instanceof RemoveObjectInstance) + { + RemoveObjectInstance removeObjectInstance = + (RemoveObjectInstance) message; + + timeManager.getTimeLock().readLock().lock(); + try + { + OrderType receivedOrderType = + removeObjectInstance.getSentOrderType() == OrderType.TIMESTAMP && + timeManager.isTimeConstrained() ? OrderType.TIMESTAMP : + OrderType.RECEIVE; + + removeObjectInstance.setReceivedOrderType(receivedOrderType); + + if (receivedOrderType == OrderType.RECEIVE) + { + // receive order callbacks need to be held until released if we + // are constrained and in the time granted state, if asynchronous + // delivery is disabled + // + boolean hold = timeManager.isTimeConstrainedAndTimeGranted() && + !isAsynchronousDeliveryEnabled(); + + callbackManager.add(removeObjectInstance, hold); + } + else + { + // schedule the callback for the appropriate time + // + Future future = schedule(removeObjectInstance.getDeleteTime(), + new AddCallback(removeObjectInstance)); + + // register the message retraction handle + // + messageRetractionManager.add( + removeObjectInstance.getDeleteTime(), future, + removeObjectInstance.getMessageRetractionHandle()); + } + } + finally + { + timeManager.getTimeLock().readLock().unlock(); + } + } + else + { + if (message instanceof TimeAdvanceGrant) + { + processFutureTasks(((TimeAdvanceGrant) message).getTime()); + } + + callbackManager.add((Callback) message); + } + } + else if (message instanceof GALTAdvanced) + { + GALTAdvanced galtAdvanced = (GALTAdvanced) message; + + LogicalTime galt = galtAdvanced.getGALT(); + + timeManager.galtAdvanced(galt); + } + else + { + processed = false; + } + return processed; + } + + public void resignFederationExecution(ResignAction resignAction) + throws OwnershipAcquisitionPending, FederateOwnsAttributes, + RTIinternalError + { + federateStateLock.writeLock().lock(); + try + { + objectManager.resignFederationExecution(resignAction); + + federateState = null; + } + finally + { + federateStateLock.writeLock().unlock(); + } + } + + public void registerFederationSynchronizationPoint(String label, byte[] tag) + throws SaveInProgress, RestoreInProgress, RTIinternalError + { + registerFederationSynchronizationPoint(label, tag, null); + } + + public void registerFederationSynchronizationPoint( + String label, byte[] tag, FederateHandleSet federateHandles) + throws SaveInProgress, RestoreInProgress, RTIinternalError + { + WriteFuture writeFuture; + + federateStateLock.readLock().lock(); + try + { + checkIfActive(); + + writeFuture = rtiSession.write( + new RegisterFederationSynchronizationPoint( + label, tag, federateHandles)); + } + finally + { + federateStateLock.readLock().unlock(); + } + + // TODO: set timeout + // + writeFuture.join(); + + if (!writeFuture.isWritten()) + { + throw new RTIinternalError("error communicating with RTI"); + } + } + + public void synchronizationPointAchieved(String label) + throws SynchronizationPointLabelNotAnnounced, SaveInProgress, + RestoreInProgress, RTIinternalError + { + WriteFuture writeFuture = null; + + federateStateLock.readLock().lock(); + try + { + checkIfActive(); + + synchronizationPointLock.lock(); + try + { + FederateSynchronizationPoint federateSynchronizationPoint = + synchronizationPoints.get(label); + if (federateSynchronizationPoint == null) + { + throw new SynchronizationPointLabelNotAnnounced(label); + } + else + { + federateSynchronizationPoint.synchronizationPointAchieved(); + + writeFuture = + rtiSession.write(new SynchronizationPointAchieved(label)); + } + } + finally + { + synchronizationPointLock.unlock(); + } + } + finally + { + federateStateLock.readLock().unlock(); + } + + if (writeFuture != null) + { + // TODO: set timeout + // + writeFuture.join(); + + if (!writeFuture.isWritten()) + { + throw new RTIinternalError("error communicating with RTI"); + } + } + } + + public void requestFederationSave(String label) + throws SaveInProgress, RestoreInProgress, RTIinternalError + { + federateStateLock.writeLock().lock(); + try + { + checkIfActive(); + + RequestFederationSave requestFederationSave = + new RequestFederationSave(label); + WriteFuture writeFuture = rtiSession.write(requestFederationSave); + + // TODO: set timeout + // + writeFuture.join(); + + if (!writeFuture.isWritten()) + { + throw new RTIinternalError("error communicating with RTI"); + } + + // TODO: set timeout + // + Object response = requestFederationSave.getResponse(); + if (response instanceof SaveInProgress) + { + throw new SaveInProgress((SaveInProgress) response); + } + else if (response instanceof RestoreInProgress) + { + throw new RestoreInProgress((RestoreInProgress) response); + } + else + { + assert response == null : + String.format("unexpected response: %s", response); + } + } + catch (InterruptedException ie) + { + throw new RTIinternalError("interrupted awaiting timeout", ie); + } + catch (ExecutionException ee) + { + throw new RTIinternalError("unable to get response", ee); + } + finally + { + federateStateLock.writeLock().unlock(); + } + } + + public void requestFederationSave(String label, LogicalTime saveTime) + throws LogicalTimeAlreadyPassed, InvalidLogicalTime, + FederateUnableToUseTime, SaveInProgress, RestoreInProgress, + RTIinternalError + { + federateStateLock.writeLock().lock(); + try + { + checkIfActive(); + + // no need to lock time manager because we have a write lock on the + // federate state + // + timeManager.checkIfLogicalTimeAlreadyPassed(saveTime); + + RequestFederationSave requestFederationSave = + new RequestFederationSave(label, saveTime); + WriteFuture writeFuture = rtiSession.write(requestFederationSave); + + // TODO: set timeout + // + writeFuture.join(); + + if (!writeFuture.isWritten()) + { + throw new RTIinternalError("error communicating with RTI"); + } + + // TODO: set timeout + // + Object response = requestFederationSave.getResponse(); + if (response instanceof LogicalTimeAlreadyPassed) + { + throw new LogicalTimeAlreadyPassed((LogicalTimeAlreadyPassed) response); + } + else if (response instanceof SaveInProgress) + { + throw new SaveInProgress((SaveInProgress) response); + } + else if (response instanceof RestoreInProgress) + { + throw new RestoreInProgress((RestoreInProgress) response); + } + else + { + assert false : String.format("unexpected response: %s", response); + } + } + catch (InterruptedException ie) + { + throw new RTIinternalError("interrupted awaiting timeout", ie); + } + catch (ExecutionException ee) + { + throw new RTIinternalError("unable to get response", ee); + } + finally + { + federateStateLock.writeLock().unlock(); + } + } + + public void federateSaveBegun() + throws SaveNotInitiated, RestoreInProgress, RTIinternalError + { + WriteFuture writeFuture; + + federateStateLock.readLock().lock(); + try + { + if (saveStatus != SaveStatus.FEDERATE_INSTRUCTED_TO_SAVE) + { + throw new SaveNotInitiated(); + } + + writeFuture = rtiSession.write(new FederateSaveBegun()); + + saveStatus = SaveStatus.FEDERATE_SAVING; + } + finally + { + federateStateLock.readLock().unlock(); + } + + // TODO: set timeout + // + writeFuture.join(); + + if (!writeFuture.isWritten()) + { + throw new RTIinternalError("error communicating with RTI"); + } + } + + public void federateSaveComplete() + throws FederateHasNotBegunSave, RestoreInProgress, RTIinternalError + { + WriteFuture writeFuture; + + federateStateLock.readLock().lock(); + try + { + checkIfRestoreInProgress(); + + if (saveStatus != SaveStatus.FEDERATE_SAVING) + { + throw new FederateHasNotBegunSave(); + } + + writeFuture = rtiSession.write(new FederateSaveComplete(null)); + + saveStatus = SaveStatus.FEDERATE_WAITING_FOR_FEDERATION_TO_SAVE; + } + finally + { + federateStateLock.readLock().unlock(); + } + + // TODO: set timeout + // + writeFuture.join(); + + if (!writeFuture.isWritten()) + { + throw new RTIinternalError("error communicating with RTI"); + } + } + + public void federateSaveNotComplete() + throws FederateHasNotBegunSave, RestoreInProgress, RTIinternalError + { + WriteFuture writeFuture; + + federateStateLock.readLock().lock(); + try + { + checkIfRestoreInProgress(); + + if (saveStatus != SaveStatus.FEDERATE_SAVING) + { + throw new FederateHasNotBegunSave(); + } + + writeFuture = rtiSession.write(new FederateSaveNotComplete()); + + saveStatus = SaveStatus.FEDERATE_WAITING_FOR_FEDERATION_TO_SAVE; + } + finally + { + federateStateLock.readLock().unlock(); + } + + // TODO: set timeout + // + writeFuture.join(); + + if (!writeFuture.isWritten()) + { + throw new RTIinternalError("error communicating with RTI"); + } + } + + public void queryFederationSaveStatus() + throws RestoreInProgress, RTIinternalError + { + WriteFuture writeFuture; + + federateStateLock.readLock().lock(); + try + { + checkIfRestoreInProgress(); + + writeFuture = rtiSession.write(new QueryFederationSaveStatus()); + } + finally + { + federateStateLock.readLock().unlock(); + } + + // TODO: set timeout + // + writeFuture.join(); + + if (!writeFuture.isWritten()) + { + throw new RTIinternalError("error communicating with RTI"); + } + } + + public void requestFederationRestore(String label) + throws SaveInProgress, RestoreInProgress, RTIinternalError + { + federateStateLock.readLock().lock(); + try + { + checkIfActive(); + + RequestFederationRestore requestFederationRestore = + new RequestFederationRestore(label); + WriteFuture writeFuture = rtiSession.write(requestFederationRestore); + + // TODO: set timeout + // + writeFuture.join(); + + if (!writeFuture.isWritten()) + { + throw new RTIinternalError("error communicating with RTI"); + } + + // TODO: set timeout + // + Object response = requestFederationRestore.getResponse(); + if (response instanceof SaveInProgress) + { + throw new SaveInProgress((SaveInProgress) response); + } + else if (response instanceof RestoreInProgress) + { + throw new RestoreInProgress((RestoreInProgress) response); + } + else + { + assert false : String.format("unexpected response: %s", response); + } + } + catch (InterruptedException ie) + { + throw new RTIinternalError("interrupted awaiting timeout", ie); + } + catch (ExecutionException ee) + { + throw new RTIinternalError("unable to get response", ee); + } + finally + { + federateStateLock.readLock().unlock(); + } + } + + public void federateRestoreComplete() + throws RestoreNotRequested, SaveInProgress, RTIinternalError + { + WriteFuture writeFuture; + + federateStateLock.readLock().lock(); + try + { + checkIfSaveInProgress(); + + if (restoreStatus != RestoreStatus.FEDERATE_RESTORING) + { + throw new RestoreNotRequested(); + } + + writeFuture = rtiSession.write(new FederateRestoreComplete()); + + restoreStatus = RestoreStatus.FEDERATE_WAITING_FOR_FEDERATION_TO_RESTORE; + } + finally + { + federateStateLock.readLock().unlock(); + } + + // TODO: set timeout + // + writeFuture.join(); + + if (!writeFuture.isWritten()) + { + throw new RTIinternalError("error communicating with RTI"); + } + } + + public void federateRestoreNotComplete() + throws RestoreNotRequested, SaveInProgress, RTIinternalError + { + WriteFuture writeFuture; + + federateStateLock.readLock().lock(); + try + { + checkIfSaveInProgress(); + + if (restoreStatus != RestoreStatus.FEDERATE_RESTORING) + { + throw new RestoreNotRequested(); + } + + writeFuture = rtiSession.write(new FederateRestoreNotComplete()); + + restoreStatus = RestoreStatus.FEDERATE_WAITING_FOR_FEDERATION_TO_RESTORE; + } + finally + { + federateStateLock.readLock().unlock(); + } + + // TODO: set timeout + // + writeFuture.join(); + + if (!writeFuture.isWritten()) + { + throw new RTIinternalError("error communicating with RTI"); + } + } + + public void queryFederationRestoreStatus() + throws SaveInProgress, RTIinternalError + { + federateStateLock.readLock().lock(); + try + { + checkIfSaveInProgress(); + + WriteFuture writeFuture = + rtiSession.write(new QueryFederationRestoreStatus()); + + // TODO: set timeout + // + writeFuture.join(); + + if (!writeFuture.isWritten()) + { + throw new RTIinternalError("error communicating with RTI"); + } + } + finally + { + federateStateLock.readLock().unlock(); + } + } + + public void publishObjectClassAttributes( + ObjectClassHandle objectClassHandle, AttributeHandleSet attributeHandles) + throws ObjectClassNotDefined, AttributeNotDefined, SaveInProgress, + RestoreInProgress, RTIinternalError + { + // ensure we have a valid object class and attribute handles + // + fdd.checkIfAttributeNotDefined(objectClassHandle, attributeHandles); + + federateStateLock.readLock().lock(); + try + { + checkIfActive(); + + objectManager.publishObjectClassAttributes( + objectClassHandle, attributeHandles); + } + finally + { + federateStateLock.readLock().unlock(); + } + } + + public void unpublishObjectClass(ObjectClassHandle objectClassHandle) + throws ObjectClassNotDefined, OwnershipAcquisitionPending, + SaveInProgress, RestoreInProgress, RTIinternalError + { + // ensure we have a valid object class handle + // + fdd.checkIfObjectClassNotDefined(objectClassHandle); + + federateStateLock.readLock().lock(); + try + { + checkIfActive(); + + objectManager.unpublishObjectClass(objectClassHandle); + } + finally + { + federateStateLock.readLock().unlock(); + } + } + + public void unpublishObjectClassAttributes( + ObjectClassHandle objectClassHandle, AttributeHandleSet attributeHandles) + throws ObjectClassNotDefined, AttributeNotDefined, + OwnershipAcquisitionPending, SaveInProgress, RestoreInProgress, + RTIinternalError + { + // ensure we have a valid object class handle + // + fdd.checkIfObjectClassNotDefined(objectClassHandle); + + federateStateLock.readLock().lock(); + try + { + checkIfActive(); + + objectManager.unpublishObjectClassAttributes( + objectClassHandle, attributeHandles); + + // TODO: give up ownership of the specified attributes + } + finally + { + federateStateLock.readLock().unlock(); + } + } + + public void publishInteractionClass( + InteractionClassHandle interactionClassHandle) + throws InteractionClassNotDefined, SaveInProgress, RestoreInProgress, + RTIinternalError + { + // ensure we have a valid interaction class handle + // + fdd.checkIfInteractionClassNotDefined(interactionClassHandle); + + federateStateLock.readLock().lock(); + try + { + checkIfActive(); + + objectManager.publishInteractionClass(interactionClassHandle); + } + finally + { + federateStateLock.readLock().unlock(); + } + } + + public void unpublishInteractionClass( + InteractionClassHandle interactionClassHandle) + throws InteractionClassNotDefined, SaveInProgress, RestoreInProgress, + RTIinternalError + { + // ensure we have a valid interaction class handle + // + fdd.checkIfInteractionClassNotDefined(interactionClassHandle); + + federateStateLock.readLock().lock(); + try + { + checkIfActive(); + + objectManager.unpublishInteractionClass(interactionClassHandle); + } + finally + { + federateStateLock.readLock().unlock(); + } + } + + public void subscribeObjectClassAttributes( + ObjectClassHandle objectClassHandle, AttributeHandleSet attributeHandles) + throws ObjectClassNotDefined, AttributeNotDefined, SaveInProgress, + RestoreInProgress, RTIinternalError + { + subscribeObjectClassAttributes(objectClassHandle, attributeHandles, false); + } + + public void subscribeObjectClassAttributesPassively( + ObjectClassHandle objectClassHandle, AttributeHandleSet attributeHandles) + throws ObjectClassNotDefined, AttributeNotDefined, SaveInProgress, + RestoreInProgress, RTIinternalError + { + subscribeObjectClassAttributes(objectClassHandle, attributeHandles, true); + } + + protected void subscribeObjectClassAttributes( + ObjectClassHandle objectClassHandle, AttributeHandleSet attributeHandles, + boolean passive) + throws ObjectClassNotDefined, AttributeNotDefined, SaveInProgress, + RestoreInProgress, RTIinternalError + { + // ensure we have a valid object class and attribute handles + // + fdd.checkIfAttributeNotDefined(objectClassHandle, attributeHandles); + + federateStateLock.readLock().lock(); + try + { + checkIfActive(); + + objectManager.subscribeObjectClassAttributes( + objectClassHandle, attributeHandles, passive); + } + finally + { + federateStateLock.readLock().unlock(); + } + } + + public void unsubscribeObjectClass(ObjectClassHandle objectClassHandle) + throws ObjectClassNotDefined, SaveInProgress, RestoreInProgress, + RTIinternalError + { + // ensure we have a valid object class handle + // + fdd.checkIfObjectClassNotDefined(objectClassHandle); + + federateStateLock.readLock().lock(); + try + { + checkIfActive(); + + objectManager.unsubscribeObjectClass(objectClassHandle); + } + finally + { + federateStateLock.readLock().unlock(); + } + } + + public void unsubscribeObjectClassAttributes( + ObjectClassHandle objectClassHandle, AttributeHandleSet attributeHandles) + throws ObjectClassNotDefined, AttributeNotDefined, SaveInProgress, + RestoreInProgress, RTIinternalError + { + // ensure we have a valid object class handle + // + fdd.checkIfObjectClassNotDefined(object... [truncated message content] |
From: <mne...@us...> - 2007-02-13 03:55:52
|
Revision: 122 http://svn.sourceforge.net/ohla/?rev=122&view=rev Author: mnewcomb Date: 2007-02-12 19:55:52 -0800 (Mon, 12 Feb 2007) Log Message: ----------- - refactoring Modified Paths: -------------- trunk/build/intellij/OHLA.iws trunk/rti/src/java/net/sf/ohla/rti1516/federate/FederateTimeManager.java Modified: trunk/build/intellij/OHLA.iws =================================================================== --- trunk/build/intellij/OHLA.iws 2007-02-13 03:53:01 UTC (rev 121) +++ trunk/build/intellij/OHLA.iws 2007-02-13 03:55:52 UTC (rev 122) @@ -20,24 +20,11 @@ </component> <component name="ChangeListManager"> <list default="true" name="Default" comment=""> - <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/Federate.java" /> - <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\federate\LocalRegionManager.java" afterPath="" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/messages/callbacks/CallbackManager.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/messages/callbacks/CallbackManager.java" /> - <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\federate\LocalMessageRetractionManager.java" afterPath="" /> - <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateMessageRetractionManager.java" /> <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\local\objects\AttributeInstance.java" afterPath="" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectManager.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectManager.java" /> - <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\federate\LocalTimeManager.java" afterPath="" /> - <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\local\objects\ObjectManager.java" afterPath="" /> - <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateSynchronizationPoint.java" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/OHLARTIambassador.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/OHLARTIambassador.java" /> - <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti/OHLARTIambassador.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti/OHLARTIambassador.java" /> - <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateTimeManager.java" /> - <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\federate\LocalSynchronizationPoint.java" afterPath="" /> <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\local\objects\ObjectInstance.java" afterPath="" /> + <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateTimeManager.java" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateTimeManager.java" /> <change type="MODIFICATION" beforePath="$PROJECT_DIR$/OHLA.iws" afterPath="$PROJECT_DIR$/OHLA.iws" /> - <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateRegionManager.java" /> - <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\federate\LocalFederate.java" afterPath="" /> + <change type="DELETED" beforePath="D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\local\objects\ObjectManager.java" afterPath="" /> </list> <list name="Failed commit: Default" comment="- removed log4j" /> <list name="Failed commit: Default (2)" comment="- refactoring" /> @@ -238,7 +225,7 @@ <file leaf-file-name="FederateRestore.java" pinned="false" current="false" current-in-tab="false"> <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateRestore.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="18" column="13" selection-start="658" selection-end="658" vertical-scroll-proportion="0.12431444"> + <state line="18" column="13" selection-start="658" selection-end="658" vertical-scroll-proportion="0.12854442"> <folding /> </state> </provider> @@ -247,16 +234,16 @@ <file leaf-file-name="FederateSave.java" pinned="false" current="false" current-in-tab="false"> <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateSave.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="16" column="13" selection-start="619" selection-end="619" vertical-scroll-proportion="0.06390978"> + <state line="20" column="13" selection-start="694" selection-end="694" vertical-scroll-proportion="0.19844358"> <folding /> </state> </provider> </entry> </file> - <file leaf-file-name="Federate.java" pinned="false" current="true" current-in-tab="true"> + <file leaf-file-name="Federate.java" pinned="false" current="false" current-in-tab="false"> <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/Federate.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="265" column="33" selection-start="11524" selection-end="11524" vertical-scroll-proportion="0.15413533"> + <state line="218" column="13" selection-start="9939" selection-end="9939" vertical-scroll-proportion="0.34435797"> <folding> <element signature="imports" expanded="true" /> </folding> @@ -264,19 +251,37 @@ </provider> </entry> </file> - <file leaf-file-name="FederateMessageRetractionManager.java" pinned="false" current="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateMessageRetractionManager.java"> + <file leaf-file-name="AttributeOwnershipAcquisition.java" pinned="false" current="true" current-in-tab="true"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/messages/AttributeOwnershipAcquisition.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="0" column="36" selection-start="28" selection-end="36" vertical-scroll-proportion="0.0"> + <state line="21" column="13" selection-start="739" selection-end="739" vertical-scroll-proportion="0.19281663"> <folding /> </state> </provider> </entry> </file> + <file leaf-file-name="ObjectInstance.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectInstance.java"> + <provider selected="true" editor-type-id="text-editor"> + <state line="1139" column="0" selection-start="32599" selection-end="32599" vertical-scroll-proportion="0.34435797"> + <folding /> + </state> + </provider> + </entry> + </file> + <file leaf-file-name="ObjectManager.java" pinned="false" current="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectManager.java"> + <provider selected="true" editor-type-id="text-editor"> + <state line="1643" column="0" selection-start="48863" selection-end="48863" vertical-scroll-proportion="0.34435797"> + <folding /> + </state> + </provider> + </entry> + </file> <file leaf-file-name="FederateRegionManager.java" pinned="false" current="false" current-in-tab="false"> <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateRegionManager.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="0" column="36" selection-start="36" selection-end="36" vertical-scroll-proportion="0.0"> + <state line="673" column="0" selection-start="19845" selection-end="19845" vertical-scroll-proportion="0.34435797"> <folding /> </state> </provider> @@ -285,7 +290,7 @@ <file leaf-file-name="FederateSynchronizationPoint.java" pinned="false" current="false" current-in-tab="false"> <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateSynchronizationPoint.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="16" column="36" selection-start="642" selection-end="642" vertical-scroll-proportion="0.06390978"> + <state line="22" column="13" selection-start="809" selection-end="809" vertical-scroll-proportion="0.19844358"> <folding /> </state> </provider> @@ -294,7 +299,7 @@ <file leaf-file-name="FederateTimeManager.java" pinned="false" current="false" current-in-tab="false"> <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateTimeManager.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="21" column="35" selection-start="788" selection-end="788" vertical-scroll-proportion="0.2236842"> + <state line="21" column="0" selection-start="753" selection-end="753" vertical-scroll-proportion="0.23151751"> <folding> <element signature="imports" expanded="true" /> </folding> @@ -305,7 +310,7 @@ <file leaf-file-name="SubscriptionManager.java" pinned="false" current="false" current-in-tab="false"> <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/SubscriptionManager.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="16" column="36" selection-start="642" selection-end="642" vertical-scroll-proportion="0.06390978"> + <state line="16" column="36" selection-start="642" selection-end="642" vertical-scroll-proportion="0.06614786"> <folding /> </state> </provider> @@ -465,14 +470,6 @@ <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java\net\sf\ohla" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java\net\sf\ohla\rti1516\federate" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> </PATH> <PATH> <PATH_ELEMENT> @@ -495,33 +492,7 @@ <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java\net\sf\ohla" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> </PATH> - <PATH> - <PATH_ELEMENT> - <option name="myItemId" value="OHLA.ipr" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="RTI" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - <PATH_ELEMENT> - <option name="myItemId" value="PsiDirectory:D:\projects\ohla-0.4\rti\src\java" /> - <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> - </PATH_ELEMENT> - </PATH> </subPane> </component> <component name="ProjectReloadState"> @@ -1018,13 +989,6 @@ <option name="myLastEditedConfigurable" /> </component> <component name="editorHistoryManager"> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/FederationExecution.java"> - <provider selected="true" editor-type-id="text-editor"> - <state line="265" column="38" selection-start="9856" selection-end="9856" vertical-scroll-proportion="0.029929578"> - <folding /> - </state> - </provider> - </entry> <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federation/Federate.java"> <provider selected="true" editor-type-id="text-editor"> <state line="150" column="0" selection-start="4647" selection-end="4647" vertical-scroll-proportion="0.029929578"> @@ -1053,66 +1017,87 @@ </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateSave.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateMessageRetractionManager.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="16" column="13" selection-start="619" selection-end="619" vertical-scroll-proportion="0.06390978"> + <state line="0" column="36" selection-start="28" selection-end="36" vertical-scroll-proportion="0.0"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateMessageRetractionManager.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/SubscriptionManager.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="0" column="36" selection-start="28" selection-end="36" vertical-scroll-proportion="0.0"> + <state line="16" column="36" selection-start="642" selection-end="642" vertical-scroll-proportion="0.06614786"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateRegionManager.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectInstance.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="0" column="36" selection-start="36" selection-end="36" vertical-scroll-proportion="0.0"> + <state line="1139" column="0" selection-start="32599" selection-end="32599" vertical-scroll-proportion="0.34435797"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateSynchronizationPoint.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/objects/ObjectManager.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="16" column="36" selection-start="642" selection-end="642" vertical-scroll-proportion="0.06390978"> + <state line="1643" column="0" selection-start="48863" selection-end="48863" vertical-scroll-proportion="0.34435797"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/SubscriptionManager.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateRegionManager.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="16" column="36" selection-start="642" selection-end="642" vertical-scroll-proportion="0.06390978"> + <state line="673" column="0" selection-start="19845" selection-end="19845" vertical-scroll-proportion="0.34435797"> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateTimeManager.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateRestore.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="21" column="35" selection-start="788" selection-end="788" vertical-scroll-proportion="0.2236842"> - <folding> - <element signature="imports" expanded="true" /> - </folding> + <state line="18" column="13" selection-start="658" selection-end="658" vertical-scroll-proportion="0.12854442"> + <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateRestore.java"> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateSave.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="18" column="13" selection-start="658" selection-end="658" vertical-scroll-proportion="0.12431444"> + <state line="20" column="13" selection-start="694" selection-end="694" vertical-scroll-proportion="0.19844358"> <folding /> </state> </provider> </entry> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateSynchronizationPoint.java"> + <provider selected="true" editor-type-id="text-editor"> + <state line="22" column="13" selection-start="809" selection-end="809" vertical-scroll-proportion="0.19844358"> + <folding /> + </state> + </provider> + </entry> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/FederateTimeManager.java"> + <provider selected="true" editor-type-id="text-editor"> + <state line="21" column="0" selection-start="753" selection-end="753" vertical-scroll-proportion="0.23151751"> + <folding> + <element signature="imports" expanded="true" /> + </folding> + </state> + </provider> + </entry> <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/federate/Federate.java"> <provider selected="true" editor-type-id="text-editor"> - <state line="265" column="33" selection-start="11524" selection-end="11524" vertical-scroll-proportion="0.15413533"> + <state line="218" column="13" selection-start="9939" selection-end="9939" vertical-scroll-proportion="0.34435797"> <folding> <element signature="imports" expanded="true" /> </folding> </state> </provider> </entry> + <entry file="file://$PROJECT_DIR$/../../rti/src/java/net/sf/ohla/rti1516/messages/AttributeOwnershipAcquisition.java"> + <provider selected="true" editor-type-id="text-editor"> + <state line="21" column="13" selection-start="739" selection-end="739" vertical-scroll-proportion="0.19281663"> + <folding /> + </state> + </provider> + </entry> </component> <component name="org.intellij.plugins.ExcludedPathsFromVcsConfiguration" /> </project> Modified: trunk/rti/src/java/net/sf/ohla/rti1516/federate/FederateTimeManager.java =================================================================== --- trunk/rti/src/java/net/sf/ohla/rti1516/federate/FederateTimeManager.java 2007-02-13 03:53:01 UTC (rev 121) +++ trunk/rti/src/java/net/sf/ohla/rti1516/federate/FederateTimeManager.java 2007-02-13 03:55:52 UTC (rev 122) @@ -19,8 +19,6 @@ import java.util.concurrent.locks.ReadWriteLock; import java.util.concurrent.locks.ReentrantReadWriteLock; -import net.sf.ohla.rti1516.federate.Federate; -import net.sf.ohla.rti1516.messages.callbacks.TimeAdvanceGrant; import net.sf.ohla.rti1516.messages.DisableTimeConstrained; import net.sf.ohla.rti1516.messages.DisableTimeRegulation; import net.sf.ohla.rti1516.messages.EnableTimeConstrained; @@ -28,6 +26,7 @@ import net.sf.ohla.rti1516.messages.ModifyLookahead; import net.sf.ohla.rti1516.messages.TimeAdvanceRequest; import net.sf.ohla.rti1516.messages.TimeAdvanceRequestAvailable; +import net.sf.ohla.rti1516.messages.callbacks.TimeAdvanceGrant; import org.apache.mina.common.WriteFuture; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |