2010-06-18 Rolf Bjarne Kvinge * MoonIsolatedStorageFile.cs: Add IsEnabled. 2010-06-16 Carlos Alberto Cortez * IsolatedStorageFile.cs: Remove should catch all the exceptions caused by DirectoryInfo.Delete and throw an IsolatedStorageException instead. 2010-06-08 Carlos Alberto Cortez * IsolatedStorageFile.cs: Ugh, accidentally forgot to commit the changes for in the previous commit. 2010-06-07 Carlos Alberto Cortez * IsolatedStorageFile.cs: GetUserStoreForSite is only throwing a NotSupportedException. * IsolatedStorageFileStream.cs: Implement Flush by calling the base impl. 2010-06-07 Carlos Alberto Cortez * IsolatedStorageFile.cs: Remove and DeleteFile must report any error found in our System.IO classes as IsolatedStorageException. 2010-06-07 Carlos Alberto Cortez * IsolatedStorageFile.cs: Update the exceptions we are firing in 4.0 for CreateDirectory, GetFileNames and GetDirectoryNames. 2010-06-06 Carlos Alberto Cortez * IsolatedStorageSecurityState.cs: Make our .ctor internal - so we don't expose a public .ctor at all. 2010-06-06 Carlos Alberto Cortez * IsolatedStorageFile.cs: Our 4.0 methods receiving a path should either return false or throw an IsolatedStorageException if the path refers to a directory outside the storage root. 2010-06-04 Carlos Alberto Cortez * IsolatedStorageFile.cs: In CheckOpen check that the directory for the current storage is still valid, and throw an exception if needed. Also, in the static Remove method call Directory.Delete only if the directory exists, to avoid throwing an exception there. 2010-06-03 Sebastien Pouliot * MoonIsolatedStorage.cs: Make class internal so we can access it from System.Window.dll to adjust quotas 2010-06-02 Carlos Alberto Cortez * IsolatedStorageFile.cs: Check for empty paths and existing paths in both MoveFile and MoveDirectory, just as we do in CopyFile. Finally cover our IO calls with a try-catch block, so all the IOException instances are reported as IsolatedStorageException. 2010-05-31 Carlos Alberto Cortez * IsolatedStorage.cs: * IsolatedStorageFile.cs: Implement AvailableFreeSpace, Quota, UsedSize and IncreaseQuotaTo. 2010-05-27 Carlos Alberto Cortez * IsolatedStorageFile.cs: Implement CopyFile. 2010-05-27 Carlos Alberto Cortez * IsolatedStorageFile.cs: Implement GetCreationTime, GetLastAccessTime and GetLastWriteTime, as well as creating a single method to check for the closed/disposed fields. 2010-05-26 Carlos Alberto Cortez * IsolatedStorageFile.cs: Remove should call Close, just as .Net seems to do. 2010-05-24 Carlos Alberto Cortez * IsolatedStorageFileStream.cs: When creating the instance, we should check for diposed first, and for closed on second place. * IsolatedStorageFile.cs: Add Obsolete to CurrentSize and MaximumSize, as part of 4.0. 2010-05-24 Carlos Alberto Cortez * IsolatedStorageFileStream.cs: When creating our instance check that the IsolatedStorageFile is not closed/disposed. * IsolatedStorageFile.cs: Expose closed/disposed info as internal properties, as well as implement 4.0 MoveDirectory/MoveFile, CreateFile and OpenFile methods. 2010-05-23 Carlos Alberto Cortez * IsolatedStorageFile.cs: Implement FileExists and DirectoryExists, as well as adding fields to detect that Close/Dispose have been called and fire the proper exceptions. 2010-05-21 Carlos Alberto Cortez 4.0 Updates. * IsolatedStorage.cs: Add ObsoleteAttribute to CurrentSize and MaximumSize. * IsolatedStorageSecurityState.cs: New, stubbed. * IsolatedStorageSecurityOptions.cs: New file. 2010-05-20 Carlos Alberto Cortez * IsolatedStorageFile.cs: Add the new 4.0 overloads for GetDirectoryNames and GetFileNames. 2010-03-16 Jb Evain * IsolatedStorageFileEnumerator.cs * MoonIsolatedStorageFileStream.cs * MoonIsolatedStorageFile.cs * MoonIsolatedStorage.cs * IsolatedStorageScope.cs * IsolatedStorageFileStream.cs * IsolatedStorage.cs * IsolatedStorageFile.cs: use MOONLIGHT symbol to disambiguate MonoTouch and Moonlight code. 2009-11-01 Sebastien Pouliot * MoonIsolatedStorageFile.cs: Add new CheckSearchPattern validation method. Fix GetDirectoryNames to behave like GetFileNames wrt searchPattern 2009-08-30 Jb Evain * IsolatedStorageFileEnumerator.cs * MoonIsolatedStorageFileStream.cs * MoonIsolatedStorageFile.cs * MoonIsolatedStorage.cs * IsolatedStorageScope.cs * IsolatedStorageFileStream.cs * IsolatedStorage.cs * IsolatedStorageFile.cs: Use the traditional net_2_0 version of isolated storage for MonoTouch. 2009-05-27 Jackson Harper * MoonIsolatedStorageFile.cs: Allow paths in search patterns. 2009-04-16 Sebastien Pouliot * MoonIsolatedStorage.cs: New. Manage the shared (location, quota) information about Moonlight isolated storage. * MoonIsolatedStorageFile.cs: Adjust with new MoonIsolatedStorage. Implement IncreaseQuotaTo UI. * MoonIsolatedStorageFileStream.cs: Adjust with MoonIsolatedStorage. 2009-04-16 Sebastien Pouliot * IsolatedStorageFile.cs: Fix thread-safety issue at creation time. [Fix bug #431039] * IsolatedStorageFileStream.cs: Fix missing path check in Verify. [Fix bug #487659] 2008-12-23 Sebastien Pouliot * IsolatedStorageFile.cs: Use Url as the default evidence type when null is supplied. [Fix bug #430932] 2008-09-11 Sebastien Pouliot * MoonIsolatedStorageFile.cs: Add application and iste specific initialization. Add rumenditary quota support (not thread or cross process safe). Add a bunch of TODO & FIXME. * MoonIsolatedStorageFileStream.cs: Add quota checks (delegated into MoonIsolatedStorageFile). 2008-09-05 Sebastien Pouliot * MoonIsolatedStorageFile.cs: Add calls to PreCheck inside EndRead and EndWrite methods. * MoonIsolatedStorageFileStream.cs: Throw an IsolatedStorageException when DeleteFile is called on an unexisting file. 2008-08-22 Sebastien Pouliot * MoonIsolatedStorageFile.cs: Implement Remove. Add a bunch of FIXME mostly related to quota. * MoonIsolatedStorageFileStream.cs: Add a call to the container's PreCheck method in most methods. Add FIXME for quota. 2008-08-21 Sebastien Pouliot * MoonIsolatedStorageFile.cs: Split Application and Site storage. Start looking at quota. * MoonIsolatedStorageFileStream.cs: Added more validation to ctors. Removed IsAsync (not in beta2). (SetLength) Start using some quota checks 2008-08-20 Sebastien Pouliot * MoonIsolatedStorageFile.cs: More fixes to match unit tests. 2008-08-20 Sebastien Pouliot * MoonIsolatedStorageFile.cs: Fix API to match SL2 beta2. Start implementing new feature (while writing unit tests). * MoonIsolatedStorageFileStream.cs: Add new async methods [Begin| End][Read|Write] present in b2. Fix endless recursion in WriteByte. 2008-04-18 Sebastien Pouliot * IsolatedStorageFile.cs: Fix CreateDirectory to accept multiple subdirectories. Avoid leaking full path in DeleteDirectory. Fix GetDirectoryNames to work with path (and the search pattern). [Fix bug #376188] 2008-03-28 Sebastien Pouliot * IsolatedStorageFile.cs: Don't show the full path on exception if a directory can't be created (fix bug #354539). Also fix path/patterns when looking for files (it behave differently than DirectoryInfo does). 2008-01-17 Sebastien Pouliot * IsolatedStorageFile.cs: Fix bug #354539 2007-12-18 Stephane Delcroix * IsolatedStorageFileEnumerator.cs: Ifdef'ing out too. Fixes the build. 2007-12-18 Miguel de Icaza * Ifdef out the large bodies of code that will just not work with Silverlight, ran into this problem again trying to run http://fluxtools.net/emailphotos Its not worth trying to alter this implementation of IsolatedStorage to work in both the regular and the Moonlight profiles, instead am going to write a simple implementation while we wait for the real 2.0 API to come out. 2007-11-06 Sebastien Pouliot * IsolatedStorageFileStream.cs: Handle rooted paths. Patch by Jay Miller to fix bug #324983. 2006-04-07 Sebastien Pouliot * IsolatedStorageFile.cs: Loading/saving the identities used to isolate the storage requires the permission to [de]serialize them too. 2005-11-09 Sebastien Pouliot * IsolatedStorageScope.cs: Added missing [Serializable] in 2.0 profile 2005-10-04 Sebastien Pouliot * IsolatedStorageFile.cs: Add a call to GC.SuppressFinalize in Dispose (even if we're not disposing anything). 2005-06-22 Sebastien Pouliot * IsolatedStorageFile.cs: Only assembly evidences are considered to resolve policy. Changed resolve method used (instead of changing it's code). 2005-06-14 Sebastien Pouliot * IsolatedStorageFileStream.cs: Remove Close method from NET_2_0. * IsolatedStorageFile.cs: Implemented missing MaximumSize property and GetPermission method. 2005-06-05 Gonzalo Paniagua Javier * IsolatedStorageFileStream.cs: check the FileMode here as FileStream throws a different exception. 2005-04-25 Sebastien Pouliot * INormalizeForIsolatedStorage.cs: Added [ComVisible(true)] for 2.0. * IsolatedStorage.cs: Added [ComVisible(true)] for 2.0 except for new property ApplicationIdentity. * IsolatedStorageException.cs: Added [ComVisible(true)] for 2.0. * IsolatedStorageFile.cs: Now calls UnprotectedGetEvidence to get the assembly evidences. Added [ComVisible(true)] for 2.0. * IsolatedStorageFileStream.cs: Added [ComVisible(true)] for 2.0. * IsolatedStorageScope.cs: Added [ComVisible(true)] for 2.0. 2005-03-24 Sebastien Pouliot * IsolatedStorageFile.cs: Added an assert for unrestricted file access to the class. This is "ok" as the user cannot control the base path for isolated storage but will be updated to be more "precise" when imperative assert are supported in the runtime. * IsolatedStorageFileStream.cs: Changed constructors so the assert for unrestricted file access is limited to constructors (not the whole class). Added LinkDemand for UnmanagedCode to get Handle and SafeFileHandle (2.0) properties. 2005-03-17 Sebastien Pouliot * IsolatedStorageScope.cs: Add missing BOOTSTRAP_NET_2_0 to new enum values. Fix #73046. * IsolatedStorageFile.cs: Remove commented security attributes. 2005-03-15 Sebastien Pouliot * IsolatedStorageFile.cs: Added CAS demands (imperative when possible) for IsolatedStoragePermission. The security attributes for NET_2_0 are commented until #73046 is fixed. * IsolatedStorageFileStream.cs: Now use StackFrame(2) to find which assembly is really calling the IsolatedStorageFileStream when no default is supplied. Throw DirectoryNotFoundException when a directory inside the isolated storage is missing. 2005-01-31 Sebastien Pouliot * IsolatedStorage.cs: Added checks to get identities. * IsolatedStorageFile.cs: Added support for identities (assembly, domain and, for 2.0, application). * IsolatedStorageFileEnumerator.cs: New. Internal enumerator for IsolatedStorageFile. * IsolatedStorageFileStream.cs: Now use the new FileStream constructor to ensure filestream name stays [Unknown]. * IsolatedStorageInfo.cs: Removed (no more required). * IsolatedStorageScope.cs: Added new 2.0 scopes: Application and Machine. 2004-07-11 Gonzalo Paniagua Javier * IsolatedStorageInfo.cs: useGetFolderPath instead of getting "HOME". 2004-06-13 Gert Driesen * IsolatedStorage.cs: really mark the storage_scope field private 2004-06-09 Gert Dresen * IsolatedStorage.cs: use private variable for holding scope, set scope in InitStore method, removed need for extra protected member (public API fix) * IsolatedStorageFile.cs: use InitStore to initialize scope 2004-05-12 Sebastien Pouliot * IsolatedStorage.cs: More details on MonoTODO. Throw exceptions on AssemblyIdentity and DomainIdentity properties. * IsolatedStorageFile.cs: More details on MonoTODO. * IsolatedStorageFileStream.cs: Removed MonoTODO on class. Now use Path.Combine to build filenames (constructor) and throw an exception when we try to get the handle (as documented). 2003-07-30 Duncan Mak * IsolatedStorageInfo.cs (CreateAssemblyFilename): (CreateDomainFilename): Replace String.Format with Path.Combine. * IsolatedStorageFile.cs: (GetStore): Update storage_scope accordingly. (GetUseStoreForAssembly): Include IsolatedStorageScope.User. (GetUseStoreForDomain): Include IsolatedStorageScope.User and IsolatedStorageScope.Assembly. * IsolatedStorage.cs: (CurrentSize): (MaximumSize): throw InvalidOperationExceptions. This is a subclass responsibility. (Scope): Implemented using a static field, storage_scope. (SeparatorInternal) (SeparatorExternal): Implemented. Use Path.DirectorySeparatorChar for SeparatorExternal. 2003-02-18 Jonathan Pryor * IsolatedStorageFile.cs: Fix spelling error (GetUseStoreForDomain --> GetUserStoreFor Domain). Reported by Torsten Rendelmann . 2003-01-19 Sebastien Pouliot * IsolatedStorageFile.cs: Added missing [CLSCompliant(false)] to CurrentSize and MaximumSize to fix compilation (at least under Windows/csc). 2003-01-18 Jonathan Pryor - General: Get a simple implementation working. Simple, not-all-there, but sufficient to get "Programming C#" example 21-17 working under Mono. This doesn't say much, as it's not a stress-test by any means. * INormalizeForIsolatedStorage.cs: re-indent to fit mono code style * IsolatedStorage.cs: match mono coding guidelines * IsolatedStorageFileStream.cs: Add members that "C# In A Nutshell" claims the class should override. Most of these members just delegate to the base class, though. CreateIsolatedPath is used to get the actual filename for the IsolatedStorageFileStream. * IsolatedStorageScope.cs: Documentation goes in monodoc, so there's no point in having C# doc-tags. Add "Roaming" member, which "C# In A Nutshell" lists. * IsolatedStorageFile.cs: Public class documented in "C# In A Nutshell". Simple implementation. Will probably need work to conform with .NET, address security concerns. * IsolatedStorageInfo.cs: Abstract IsolatedStorage information used by other classes, such as the directory isolated storage is located under, how to calculate the size of isolated storage, etc. 2002-02-19 Duncan Mak * IsolatedStorageFileStream.cs: Added MonoTODO here. This class is completely stubbed out (over the summer) and didn't get properly MonoTODO'd. 2002-02-08 Duncan Mak * IsolatedStorage.cs: Looked at MemberInfo.cs, another fellow abstract class. Oh, that's what it means! Removed unnesscessary MonoTODO attributes. 2002-02-07 Duncan Mak * IsolatedStorage.cs: Added to CVS, stubbed out the API. * IsolatedStorageException.cs: Implemented. 2002-01-07 Duco Fijma * Created INormalizeForIsolatedStorage