Commit Graph

131 Commits

Author SHA1 Message Date
Homer Horwitz
648452dd91 - Add new RegionModulesControllerPlugin to the application modules
- Change several classes to use the new plugin for handling of region-modules
  (NOTE: No regionmodule is using this yet)
- Add necessary prebuild parts (don't forget to runprebuild)
Attention: Work in progress. This shouldn't break anything, but you never know...
2009-04-05 17:08:11 +00:00
lbsa71
7f4bf5871d * Proactively fixed bug-potential concerning the fact that m_httpServer property was differently referred to between RegionApplicationBase and all other grid services. 2009-04-03 20:56:36 +00:00
Melanie Thielker
76ca096384 Add a PIDFile in [Startup], which the PID will be written to 2009-04-01 12:13:42 +00:00
diva
f7eac63e01 Another bit of refactoring to try to make sense of OpenSim.Framework.Communications. Everything that looks like a service, with service handlers, moved to .Services -- i.e. LoginService and Response, and GridInfoService. The rest of the changes were to adapt to the new locations of those files. 2009-03-29 22:04:45 +00:00
Justin Clarke Casey
19595a2825 * minor: spit out creator name on save iar
* not yet ready for use
2009-03-25 19:14:36 +00:00
Justin Clarke Casey
8f1844665b * Group OpenSim.Framework.Servers interfaces together 2009-03-19 19:21:17 +00:00
lbsa71
91a096dca6 * Cleanup and CCC (Code Convention Conformance) 2009-03-10 20:27:41 +00:00
Justin Clarke Casey
fc2c73d5c6 * minor: remove some mono compiler warnings 2009-03-06 21:00:15 +00:00
Justin Clarke Casey
f18400fcfb * For now, restore file extension for default oar name I accidentally removed on the last commit 2009-03-04 20:36:09 +00:00
Justin Clarke Casey
b52ac542ad * Add the abilty to load and save iar item nodes where folders have identical names 2009-03-04 20:31:03 +00:00
MW
76133d0763 Refactoring of CreateCommsManagerPlugin.
Plus some general cleanup of a few other files (deleting excess blank lines etc)
2009-03-03 12:51:54 +00:00
MW
8ebd5b409a Renamed OpenSimBase m_autoCreateLindenStack to m_autoCreateClientStack 2009-03-02 18:04:00 +00:00
MW
3c46ee9326 Moved the SetupScene methods from RegionApplicationBase to OpenSimBase [Do we really still need RegionApplicationBase?]
Added a flag (bool m_autoCreateLindenStack = true) which says if the ClientStack will be autocreated and initialised when creating regions. This helps with moving ClientStacks to Region modules. 
Currently this flag is hardcoded to true, as it is only for testing at the moment, so you need to change the value in the code if you want to turn off auto creating.
2009-03-02 16:33:11 +00:00
MW
1dcbea0144 Removed the commented out InitialiseStandaloneServices and InitialiseGridServices (which are now preformed in CreateCommsManagerPlugin) methods from OpenSimBase and HGOpenSimNode. As if we decided to swap back to the old methods we can always re-add them, rather than leave them commented out. 2009-03-02 11:21:18 +00:00
MW
756c517069 Added IRegionCreator interface that all ApplicationPlugins that are creators of Scenes should implement and register with the ApplicationRegistry.StackModuleInterface<>(); So that other plugins can attach to their OnNewRegionCreated event.
Made some changes to IRegistryCore and RegistryCore so they support "Stacked" interfaces.
2009-02-26 22:51:52 +00:00
MW
e2d30a0244 Moved the Initialisation of the CommunicationsManager to a ApplicationPlugin.
Also in that plugin it registers the IUserService with all the Scenes (as they are created). So now we can start changing over all uses of IUserService, that currently access it from the CommunicationsManager to accessing it from the Scene.RequestModuleInterface call. 
Once that is done we can move the UserService creation out to its own plugin and remove all references to it from the CommunicationsManager. Then we can take the next CommunicationsManager interface and repeat.
2009-02-26 21:30:12 +00:00
MW
18382ebfd9 Changed the type of the ApplicationRegistry member from RegistryCore to IRegistryCore 2009-02-26 20:11:13 +00:00
MW
33e7c09b7b Added IRegistryCore and RegistryCore to OpenSim.Framework.
Added a ApplicationRegistry to OpenSimBase.
Changed LoadRegionsPlugin so it registers itself to that application registry.
Added a event to LoadRegionsPlugin, that is triggered when it creates a new scene ,although maybe this event should actually be in opensimBase incase other plugins are creating regions (like the RemoteAdminPlugin).
2009-02-26 20:01:20 +00:00
Sean Dague
c0c1a31f61 Attempt to fix the "region starts but doesn't load anything" issue 2009-02-26 17:06:06 +00:00
Sean Dague
6c8debd3e0 From: Alan Webb <awebb@linux.vnet.ibm.com>
The mono addin filter for the AssetCache is incorrect, this fixes it.
The problem only shows up when you have more than one AssetCache to
choose from.
2009-02-25 14:19:15 +00:00
Mike Mazur
bdf95e54a2 A few updates necessary for load balancer.
- handle GetUser request for nonexistent user gracefully
- include throttle levels in ClientInfo
- code to save/restore throttles in client stack
- only update/send updates to active clients
- make animation classes serializable
2009-02-25 00:32:26 +00:00
Charles Krinke
e9e5c175cd Thank you kindly, TLaukkan (Tommil) for a patch that solves:
If -background=true is specified on the command line, a null pointer exception crashes the server in OpenSim/Region/Application/OpenSimBase.cs in method StartupSpecific. Its trying to dereference m_console which is null, presumably because we're in background mode.
2009-02-23 23:14:04 +00:00
diva
33330297d6 THE BIG ANTI-REMOTING SCHLEP -- StartRemoting is no more. Sims in older versions will have a hard time communicating with sims on this release and later, especially if they haven't transitioned to RESTComms at all.
There's still some cleanup to do on assorted data structures, but the main functional change here is that sims no longer listen on remoting ports.
2009-02-20 03:39:50 +00:00
Jeff Ames
7d4846462b Update svn properties, add copyright headers, minor formatting cleanup. 2009-02-20 02:33:54 +00:00
Sean Dague
8ed631307b From: Alan Webb <awebb@linux.vnet.ibm.com>
I've changed the extension point name, and the internal references that
used the same string. I also fixed up the messaging around the asset
loader so that it is more explicit.
2009-02-18 13:15:07 +00:00
Justin Clarke Casey
93837807ff * refactor: remove AssetCache field hanging off Scene
* This is always available at Scene.CommsManager.AssetCache
2009-02-16 19:15:16 +00:00
Sean Dague
f4bec00057 From: Alan Webb <awebb@linux.vnet.ibm.com>
The change makes two principal implementation changes:

[1] It removes the hard coded set of possible asset server client
implementations, allowing any arbitrary implementation that has been
identified to the PluginLoader as an appropriate extension. The
extension point for asset server client extension
is /OpenSim/AssetServerClient. All of the old configuration rules have
been preserved, and any of the legacy configuration values will still
work as they did before, except the implementation is now loaded as a
plug-in, rather than as a hard-coded instantiation of a specific class.
The re-hashing of IAssetServer as an extension of IPlugin made upgrading
of the implementation classes a necessity.

Caveat: I have not been able to meaningfully test the crypto-grid
clients. I believe they should work correctly, but the refactoring
necessary to handle plug-in based initialization (vs constructor-based
initialisation) admits the possibility of a problem.

[2] The asset cache implementation, previously introduce as a hard-code
class instantiation is now implemented as an IPlugin. Once again the
previous (configurationless) behavior has been preserved. But now it is
possible for those interested in experimenting with cache technologies
to do so simply by introducing a new extension for the asset cache
extension point (/OpenSim/AssetCache).

I've tested all of the configuration settings, after applying the patch
to a newly extracted tree, and they seem to work OK.
2009-02-16 12:20:31 +00:00
Melanie Thielker
a8f3d625cb Guard the values used to set the cursor position in the real time console 2009-02-13 20:49:23 +00:00
lbsa71
801da4346a * optimized usings. 2009-02-12 09:53:12 +00:00
Justin Clarke Casey
162a59ba17 * Refactor inventory archive code to allow direct invocation in order to support future unit tests
* Add a file I missed out from the last commit (the build was probably fine without it)
2009-02-11 18:46:51 +00:00
Justin Clarke Casey
04d6a810b6 * More inventory archive invocation to a proper region module
* Not ready for use yet
2009-02-11 17:34:12 +00:00
Melanie Thielker
9bfbfa381a Add proper handling for shared vs. unshared modules to the command
interface. Shared modules will now only get added once, so the command
handler is called once per module, not once per scene. Removal of scenes
has no adverse effects. Nonshared modules will be called for each scene.
2009-02-10 23:15:48 +00:00
Dr Scofield
180be7de07 this is step 2 of 2 of the OpenSim.Region.Environment refactor.
NOTHING has been deleted or moved off to forge at this point.  what
has happened is that OpenSim.Region.Environment.Modules has been split
in two:

- OpenSim.Region.CoreModules: all those modules that are either
  directly or indirectly referenced from  other  OpenSim packages, or
  that provide functionality that the OpenSim developer community
  considers core functionality:

      CoreModules/Agent/AssetTransaction
      CoreModules/Agent/Capabilities
      CoreModules/Agent/TextureDownload
      CoreModules/Agent/TextureSender
      CoreModules/Agent/TextureSender/Tests
      CoreModules/Agent/Xfer
      CoreModules/Avatar/AvatarFactory
      CoreModules/Avatar/Chat/ChatModule
      CoreModules/Avatar/Combat
      CoreModules/Avatar/Currency/SampleMoney
      CoreModules/Avatar/Dialog
      CoreModules/Avatar/Friends
      CoreModules/Avatar/Gestures
      CoreModules/Avatar/Groups
      CoreModules/Avatar/InstantMessage
      CoreModules/Avatar/Inventory
      CoreModules/Avatar/Inventory/Archiver
      CoreModules/Avatar/Inventory/Transfer
      CoreModules/Avatar/Lure
      CoreModules/Avatar/ObjectCaps
      CoreModules/Avatar/Profiles
      CoreModules/Communications/Local
      CoreModules/Communications/REST
      CoreModules/Framework/EventQueue
      CoreModules/Framework/InterfaceCommander
      CoreModules/Hypergrid
      CoreModules/InterGrid
      CoreModules/Scripting/DynamicTexture
      CoreModules/Scripting/EMailModules
      CoreModules/Scripting/HttpRequest
      CoreModules/Scripting/LoadImageURL
      CoreModules/Scripting/VectorRender
      CoreModules/Scripting/WorldComm
      CoreModules/Scripting/XMLRPC
      CoreModules/World/Archiver
      CoreModules/World/Archiver/Tests
      CoreModules/World/Estate
      CoreModules/World/Land
      CoreModules/World/Permissions
      CoreModules/World/Serialiser
      CoreModules/World/Sound
      CoreModules/World/Sun
      CoreModules/World/Terrain
      CoreModules/World/Terrain/DefaultEffects
      CoreModules/World/Terrain/DefaultEffects/bin
      CoreModules/World/Terrain/DefaultEffects/bin/Debug
      CoreModules/World/Terrain/Effects
      CoreModules/World/Terrain/FileLoaders
      CoreModules/World/Terrain/FloodBrushes
      CoreModules/World/Terrain/PaintBrushes
      CoreModules/World/Terrain/Tests
      CoreModules/World/Vegetation
      CoreModules/World/Wind
      CoreModules/World/WorldMap

- OpenSim.Region.OptionalModules: all those modules that are not core
  modules:

      OptionalModules/Avatar/Chat/IRC-stuff
      OptionalModules/Avatar/Concierge
      OptionalModules/Avatar/Voice/AsterixVoice
      OptionalModules/Avatar/Voice/SIPVoice
      OptionalModules/ContentManagementSystem
      OptionalModules/Grid/Interregion
      OptionalModules/Python
      OptionalModules/SvnSerialiser
      OptionalModules/World/NPC
      OptionalModules/World/TreePopulator
2009-02-10 13:10:57 +00:00
Sean Dague
8088802c21 From Alan Webb <awebb@linux.vnet.ibm.com>
These changes replace all direct references to the AssetCache with
IAssetCache. There is no change to functionality. Everything works as
before.

This is laying the groundwork for making it possible to register
alternative asset caching mechanisms without disrupting other parts of
OpenSim or their dependencies upon AssetCache functionality.
2009-02-09 21:47:55 +00:00
Justin Clarke Casey
a034b640da * Add the ability to type help <command> for more detailed help about a specific command if any is available 2009-02-09 20:52:04 +00:00
Melanie Thielker
54c6a920ba Replace the console for all OpenSim apps with a new console featuring command
line editing, context sensitive help (press ? at any time), command line
history, a new plugin command system and new appender features thet let you
type while the console is scrolling. Seamlessly integrates the ICommander
interfaces.
2009-02-07 12:25:39 +00:00
Dr Scofield
9b66108081 This changeset is the step 1 of 2 in refactoring
OpenSim.Region.Environment into a "framework" part and a modules only
part. This first changeset refactors OpenSim.Region.Environment.Scenes,
OpenSim.Region.Environment.Interfaces, and OpenSim.Region.Interfaces
into OpenSim.Region.Framework.{Interfaces,Scenes} leaving only region
modules in OpenSim.Region.Environment.

The next step will be to move region modules up from
OpenSim.Region.Environment.Modules to OpenSim.Region.CoreModules and
then sort out which modules are really core modules and which should
move out to forge.

I've been very careful to NOT BREAK anything. i hope i've
succeeded. as this is the work of a whole week i hope i managed to
keep track with the applied patches of the last week --- could any of
you that did check in stuff have a look at whether it survived? thx!
2009-02-06 16:55:34 +00:00
Justin Clarke Casey
732cd838b1 * Make existing module commanders register as help topics
* Typing help will now give a list of these topics at the top (as well as the rest of the current help stuff)
* Typing help <topic> will give information about commands specific to that topic
2009-02-05 21:35:59 +00:00
Justin Clarke Casey
65448cd02d * refactor: Split out module Command class into a separate file 2009-02-05 19:34:23 +00:00
Justin Clarke Casey
18100eee50 * Remove unused region info list from OpenSimBase.
* The same information is available via SceneManager
2009-02-05 18:47:39 +00:00
Justin Clarke Casey
d04025ff3d * refactor: Move module handling code up into SceneBase from Scene, reducing the large number of different things that Scene does 2009-02-05 18:36:53 +00:00
Justin Clarke Casey
a1da605706 * Introduce a new "default" option for asset_database in the [STORAGE] section
* This option makes OpenSim use the usual db based asset service in standalone, and the grid based one in grid mode
* The other options can (local, grid, etc) can still be used explicitly as before
* Also change OpenSim.ini.example and the surrounding explanative text
2009-02-04 18:56:12 +00:00
Justin Clarke Casey
b6ee2f15ba * refactor: Remove the need to separately pass in the http listener to the scene - this is always available via CommsManager 2009-01-06 15:09:52 +00:00
Justin Clarke Casey
266d0fbaae * Apply http://opensimulator.org/mantis/view.php?id=2927 with some changes
* This allows configuration of the assetset and library control file paths to be other than ./inventory/Libraries.xml and ./assets/AssetSets.xml
* This is controlled via the LibrariesXMLFile and AssetSetsXMLFile configuration settings in [StandAlone] in OpenSim.ini (in standalone)
and via the user and asset config xml files for grid mode
* Thanks to SirKimba for the patch
2008-12-29 16:56:48 +00:00
Justin Clarke Casey
3b0db66b92 * Apply http://opensimulator.org/mantis/view.php?id=2775 with small tweaks
* This pushes an identifier for the OpenSim scene to the physics scene.  This allows log messages from the physics scene to identify which OpenSim scene they relate to.
* Thanks Gerhard
2008-12-15 18:39:54 +00:00
MW
11169c0e71 Made BaseOpenSimServer.ShutdownSpecific() public. As the OpenSimBase.Shutdown() includes a Environment.Exit(0); which is not always wanted when shutting down, like from a windows service. 2008-12-02 11:40:22 +00:00
Teravus Ovares
414bf2aaf1 * The equals override of 'Location' is not working as expected. This caused sim restarts to fail because the test that searches for and shutsdown the UDP server listener for that region never found and shutdown the udp server. hence the error message, "only one listener on port".
* This is a high profile candidate for a unit test. (big)
2008-11-28 19:44:44 +00:00
Justin Clarke Casey
7b49c711e9 * minor: Eliminate unused paramter in LocalUserServices constructors 2008-11-28 15:40:44 +00:00
Justin Clarke Casey
0862627b34 * refactor: move CreateUser into UserServiceAdmin 2008-11-28 15:34:30 +00:00
Dahlia Trimble
d8bb20fc1c Thanks SachaMagne for a patch which adds the following console commands:
login-enable : Allow login at sim level (opensim.exe)
login-disable: Stop any login BUT keep the logged avt 
login-status : Return the actual status
2008-11-24 09:53:49 +00:00