Commit Graph

386 Commits

Author SHA1 Message Date
lbsa71
e93b782f9d * Introduced some experimental code with regards to asset data substitution 2009-04-08 19:59:37 +00:00
Justin Clarke Casey
f3c7298fc5 * Make it possible to store creator strings in user inventory items as well as UUIDs
* All existing functionality should be unaffected.
* Database schemas have not been changed.
2009-04-08 17:50:57 +00:00
lbsa71
fb9a358b79 * Refactored out and de-duplicated Base64ToString(string)
* Fixed minor typo
2009-03-31 05:51:28 +00:00
Jeff Ames
54ccca1e2c Update svn properties, add copyright header, formatting cleanup. 2009-03-31 02:00:33 +00:00
lbsa71
3ca1481c3d * Minor fixes, inverted an if for readability and introduced a virtual pre-process step on the asset cache 2009-03-26 06:56:10 +00:00
Dr Scofield
0bb3d2e6d7 cleanup 2009-03-25 07:36:56 +00:00
Justin Clarke Casey
64341fc965 * minor: remove a couple more compiler warnings 2009-03-24 20:57:02 +00:00
Dr Scofield
b5f6aa6ff2 From: Alan Webb <alan_webb@us.ibm.com>
Changes to AssetCache and DynamicTextureModule to eliminate
  opportunities for lost texture updates.
2009-03-24 08:21:50 +00:00
Melanie Thielker
412112acba Committing partial work on passing folders across instances. This may crash. 2009-03-23 00:11:34 +00:00
Melanie Thielker
48e87b6448 Make single item inventory gives work across regions 2009-03-22 18:25:04 +00:00
Melanie Thielker
e6bb86a224 Add QueryItem method to secure inventory and HG inventory, change method sig to
provide additional information the HG needs.
2009-03-22 15:42:22 +00:00
Melanie Thielker
73a982babe Fox a null ref in the inventory give module 2009-03-22 15:19:43 +00:00
Melanie Thielker
1121a214b9 Add a QueryItem method to the inventory subsystem. Currently implemented for
MySQL only, stubs for the others. This allows updating the cache with a single
item from the database.
2009-03-21 17:46:58 +00:00
Justin Clarke Casey
c04e7cdf2b * Support loading empty folders in an iar 2009-03-13 20:46:53 +00:00
Justin Clarke Casey
6573e2ee2f * Remove asset cache size and texture stat reports from ASSET STATS since these are now inaccurate
* Correct count of assets in cache
2009-03-13 18:36:24 +00:00
Justin Clarke Casey
ae759f2d06 * Add basic asset cache get test 2009-03-09 19:40:32 +00:00
Justin Clarke Casey
1bf05a543c * Move method documentation from AssetCache up to IAssetCache
* No functional changes
2009-03-09 18:35:26 +00:00
Justin Clarke Casey
5a6bc26600 * Address http://opensimulator.org/mantis/view.php?id=3207
* A saved archive now immediately expires the data in the asset cache that it used, rather than retaining all the assets (esp textures) in the cache.
* This is an imperfect solution.  Ideally we would only expire the assets newly requested for the archive (not existing ones).  But doing that would require a lot more 
restructuring.
* I don't believe there are any locking issues due to the locking performed by the underlying memory cache, but please report any issues.
2009-03-09 17:55:08 +00:00
Sean Dague
57ab79e331 * Update ScenePresenceTests to reflect current REST communication workflow.
* Fixed an issue with AssetCache where it would break unit tests randomly.

From: Arthur Rodrigo S Valadares <arthursv@linux.vnet.ibm.com>
2009-02-26 21:29:16 +00:00
Charles Krinke
8f55b9d735 Mantis#3218. Thank you kindly, TLaukkan (Tommil) for a patch that:
* Added log4net dependency to physxplugin in prebuild.xml.
* Added missing m_log fields to classes.
* Replaced Console.WriteLine with appropriate m_log.Xxxx
* Tested that nant test target runs succesfully.
* Tested that local opensim sandbox starts up without errors.
2009-02-22 20:52:55 +00:00
lbsa71
b99d9bdeb1 * Reverted the AssetServer fix, apparently something was dependent on IAssetDataPlugin being in OpenSim.Data 2009-02-19 19:32:53 +00:00
lbsa71
b5502ef3c3 * Extracted IAssetData and moved it to OpenSim.Framework to prepare to get rid of ugly CoreModules dependency on AssetServer.exe
* And yes, the IAssetDataPlugin is misnomed, which became apparent on extracting it.
2009-02-19 18:40:32 +00:00
Justin Clarke Casey
d03c32aa69 * Allow inventory archives to be saved from the 'root' inventory directory
* Reload doesn't currently obey structure information
* Not yet ready for use
2009-02-17 18:46:42 +00:00
Mike Mazur
76c0935ec7 - remove the Metadata property from AssetBase and return all previous
properties as before
- prefix private variables with m_ in AssetBase.cs
- related to Mantis #3122, as mentioned in
  https://lists.berlios.de/pipermail/opensim-dev/2009-February/005088.html
- all services will likely need to be upgraded after this commit
2009-02-17 01:36:44 +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
Justin Clarke Casey
31ca3a8d4d * refactor: Move RequestInventoryForUser() from service to CachedUserInfo
* This simplifies callers in most cases - CachedUserInfo is already handling the rest of the fetch inventory work anyway
2009-02-12 17:07:44 +00:00
lbsa71
801da4346a * optimized usings. 2009-02-12 09:53:12 +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
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
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
Mike Mazur
0c03a48fb2 - add OpenSim.Framework.AssetMetadata class. AssetBase is now composed of it
- trim trailing whitespace
2009-02-04 00:01:36 +00:00
Mike Mazur
e12b0a2496 - move IAssetDataPlugin from OpenSim/Framework/IAssetProvider.cs to
OpenSim/Data/IAssetData.cs
- remove some trailing whitespace
2009-02-03 05:20:16 +00:00
Mike Mazur
f8e45e8e98 Rename IAssetProviderPlugin to IAssetDataPlugin aligning with the other data plugins. 2009-02-03 05:20:03 +00:00
Justin Clarke Casey
dbd2b45233 * Write a simple archive loading test which doesn't actually do any testing yet apart from not blow up 2009-01-23 20:38:44 +00:00
Mike Mazur
92e6bbcd63 No longer append a "texture" parameter on texture asset requests. The
asset server doesn't check for the existence of this parameter since
r2744.
2009-01-19 02:30:51 +00:00
Justin Clarke Casey
a31792ee5c * prune and regrade log messages relating to client login and logout 2009-01-06 21:39:55 +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
diva
8fffdac7fa Attempt at restoring inventory access after TPs/crossings. RemoveClient in Scene was being too
aggressive at nixing the user out of the cache. We're now relying on NeedSceneCacheClear to decide
whether to nix it or not. All other mods in other files are for better debugging messages.
2008-12-15 20:45:40 +00:00
Justin Clarke Casey
71960f17bc * Extend update test to test situation where it also moves the folder
* Correct logic so that update folder behaves as expected
2008-12-12 21:06:07 +00:00
Justin Clarke Casey
b1f018aa26 * Create update folder test
* Correct small logic elidation
2008-12-12 20:43:42 +00:00
Justin Clarke Casey
42ec7f4935 * minor: make AddRequest() protected since in principle it shouldn't be used outside the class and its descendents 2008-12-12 20:10:39 +00:00
Justin Clarke Casey
a7e145bdfd * refactor: pull out common user profile test code into utility functions 2008-12-12 18:48:29 +00:00
Justin Clarke Casey
80e267dcfe * refactor: Stop exposing InventoryFolderImpl.SubFolders publicly 2008-12-11 20:58:11 +00:00
Justin Clarke Casey
f23856a575 * Add get child folder test 2008-12-11 20:36:46 +00:00
Justin Clarke Casey
30213e141b * Add create folder userinfo test 2008-12-11 19:57:12 +00:00
Justin Clarke Casey
c4b45449ee * test: Add simple user profile test that checks for non-existing users 2008-12-11 17:23:55 +00:00
Justin Clarke Casey
f38c35b609 * refactor: Move inventory handlers out from UserProfileCacheService
* This means that UserProfileCacheService no longer needs to know about IClientAPI and can leave it to callers to do their own error logging
* This is also more consistent with the way that item inventory manipulation is handled
* I don't really think Scene.PacketHandlers.cs should be a permanent home for these handlers - this is just for convenience
2008-12-10 19:12:59 +00:00
Justin Clarke Casey
9e02a639e5 * Apply the other patch from http://opensimulator.org/mantis/view.php?id=2315
* This means that LL RAW terrains (one source being the upload/download buttons on the estate dialog in the viewer) are now imported the 'right' way around rather than being 
flipped on the y axis
* Existing RAW terrains before this patch will need to be flipped with the "terrain flip y" command from the console after import
* More details on the mailing lists soon.
-This line, and those below, will be ignored--

M    OpenSim/Region/Environment/Modules/World/Terrain/FileLoaders/LLRAW.cs
M    OpenSim/Framework/Communications/Cache/CachedUserInfo.cs
M    OpenSim/Framework/Communications/Cache/UserProfileCacheService.cs
2008-12-10 16:50:11 +00:00
Justin Clarke Casey
762712c02e * Actually update subfolders of parent folders in the inventory cache when a folder gets moved
* This was causing inventory folder transfer code to not work properly (this is still temporarily disabled)
2008-12-09 18:35:09 +00:00
Dr Scofield
bdffd56a45 killing warnings, reformatting RemoteAdminPlugin 2008-12-05 15:28:03 +00:00