Commit Graph

365 Commits

Author SHA1 Message Date
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
Justin Clarke Casey
38ca31b37a * Put in the code necessary to allow inventory transfer of whole folders (and their contents) between agents, not just single items
* However, this is not currently activated since it's not absolutely fully tested and there's a bug lurking in there to do with the sending of the BulkInventoryUpdate packets
2008-12-04 19:57:36 +00:00
Justin Clarke Casey
71e05a5707 * test: Add a wodge of code in order to be able to slightly extend a test to deliver a taken object to a user inventory folder without throwing an exception
* test doesn't actually double check for the presence of the item yet
2008-11-28 19:39:46 +00:00
Melanie Thielker
fba9e3f513 Don't serve texture preview from other people's objects if you
havenever seen that texture before.
2008-11-23 20:39:51 +00:00
Homer Horwitz
78d42a7fc8 - Fix a formatting error in a log message (Mantis#2635). 2008-11-16 21:32:10 +00:00
Justin Clarke Casey
50e3eb31b0 * Restore storing null to represent 'missing asset' requests in the AssetCache
* If we don't do this then callers to the polling GetAsset wait the full polling time before returning
2008-11-11 17:54:21 +00:00
Adam Frisby
1493f7349f * Minor typing fixes in AssetCache - now uses base types for nearly everything.
* Code Cleanliness Fixes in LLClientView
* Using field instead of local variable for handlerUpdatePrimGroupRotation (if you notice any new oddities with prim group rotation after this patch, please mantis)
2008-11-11 17:48:36 +00:00
Jeff Ames
5276c4bdf8 Update svn properties, minor formatting cleanup. 2008-11-11 00:52:47 +00:00
Adam Frisby
e0498e1638 * Fixed asset bug. 2008-11-09 23:05:08 +00:00
Adam Frisby
c43e466301 * Enabled GTCache for AssetCache
* Items will now be locally cached for only 24 hours from last access. (Rather than until restart)
* Caveat: Implementing the new caching mechanism means statistics gathering on AssetCache is no longer functional. (Justin - you might want to take a look and see if you can somehow get that back and running if you still need it)
2008-11-09 15:00:26 +00:00
Jeff Ames
bbb8d6fc51 Remove empty OSUUID.cs file. Add copyright headers. Minor formatting cleanup. 2008-11-08 14:28:43 +00:00
Charles Krinke
17e43dcc0f Mantis#2566. Thank you kindly, Diva for a patch that:
This patch introduces a couple of read-only properties, 
so that I can grab the asset server plugin from a region 
module. This is needed to set up an http service for 
accessing standalone assets remotely.
2008-11-06 19:27:18 +00:00
Charles Krinke
d664192dfe Mantis#2557. Thank you kindly, Diva for a patch that:
This patch changes a method from private to public.
Will make life easier for the asset mapper for 
the hypergrid.
2008-11-05 02:23:44 +00:00
Justin Clarke Casey
8a3157aa6a * Check in (disabled) results of not persisting avatar textures but rather sending ImageNotFound to clients if avatar textures are missing
* Whilst this does automatically get the client to rebake, on crossing a region border the 'local' assets are left behind
* There may be a cunning solution (such as squirting the assets on region crossing, or having them fetched from the original region) but 
instead I'm going to opt for the easy solution of keeping them in the asset database, for now
2008-10-29 18:38:10 +00:00
Justin Clarke Casey
1ff9709ea3 * Possibly fix grey avatar appearance problems
* And hopefully rebaking all the time should no longer be necessary now
* It turns out that when the client baked the texture, the uploaded asset had the Temporary flag to true (Temporary is actually deprecated).  
* It also had the StoreLocal flag set to true, which signifies that the asset should be stored locally.  If it disappears we should reply to the asset request with 
ImageNotInDatabasePacket
* However, last time this was enabled some clients started crashing.  This may well no longer be the case and needs to be tested, but in the mean time we will store 
the asset instead.
* This needs to be resolved in a better way, possibly by starting to send the ImageNotInDatabase packet again instead
2008-10-28 21:31:23 +00:00
Dr Scofield
12042cdc2b From: Alan Webb <alan_webb@us.ibm.com>
cleanups and assorted fixes to REST inventory, asset, and appearance
services.
2008-10-20 18:07:06 +00:00
Melanie Thielker
efe3f3eb2a Megapatch. :) Fix skull attachment editing. Streamline Object terse updates.
Add rezzing time to objects. Add Object return and traffic fields to land
database. Add plumbing for auto return. Implement auto return.
Contains a migration. May contain nuts.
2008-10-18 05:51:36 +00:00
Sean Dague
7f721ae20c fix line endings, as apparently the bot didn't do this yet 2008-10-16 15:58:07 +00:00
Justin Clarke Casey
9324c3f110 * refactor: Move error logging from GetUserDetails up to callers, since there are some circumstances in which not finding a user is not an error 2008-10-15 16:35:27 +00:00
Adam Frisby
54d7be8a49 * Adding CrytoGridAssetClient support - allows encrypting assets that are stored on a potentially hostile grid. This is not DRM, not should be relied on until after it's been security audited. I'll write a blog post on this explaining how/why/when you should use this, and what it does. 2008-10-14 08:54:46 +00:00
Justin Clarke Casey
7ec065198a * Apply http://opensimulator.org/mantis/view.php?id=2294
* This is an initial basic experimental code for inventory import and export from the region server
* Probably not yet ready for general use
* Thanks Kayne!
2008-09-29 14:41:16 +00:00
Teravus Ovares
16b6738cda * Patch from JHurliman
* Updates to libomv r2243, 
* Remove lots of unnecessary typecasts
* Improves SendWindData()
Thanks jhurliman. 
* Will update OpenSim-libs in 10 minutes..
2008-09-26 17:25:22 +00:00