diff --git a/.gitignore b/.gitignore index 77debb097..a5843d69e 100644 --- a/.gitignore +++ b/.gitignore @@ -136,3 +136,4 @@ UpdateLogs/ .idea/* NzbDrone.Web/* *log.txt +siaqodb.lic diff --git a/Libraries/Siaqodb/siaqodb.XML b/Libraries/Siaqodb/siaqodb.XML index 32203e305..6405a133c 100644 --- a/Libraries/Siaqodb/siaqodb.XML +++ b/Libraries/Siaqodb/siaqodb.XML @@ -86,6 +86,152 @@ Do NOT use it!, it is used only internally + + + Class responsible for configurations of Siaqodb database engine + + + + + Add an index for a field or automatic property of a certain Type,an Index can be added also by using Attribute: Sqo.Attributes.Index; + both ways of adding index are similar + + Field name or automatic property name + Type that declare the field + + + + Add an UniqueConstraint for a field of a certain Type,an UniqueConstraint can be added also by using Attribute: Sqo.Attributes.UniqueConstraint; + both ways of adding UniqueConstraint are similar + + Field name or automatic property name + Type that declare the field + + + + Put MaxLength for a string field or automatic property of a Type, MaxLength can be set also by using Attribute: Sqo.Attributes.MaxLength + + Field name or automatic property name + max length for a string + Type that declare the field + + + + Ignore a field or automatic property to be stored + + Name of field or automatic property + Type that declare the field + + + + Set the name of backing field for a property in case engine cannto discover it, this also can be set by attribute: Sqo.Attributes.UseVariable + + Name of property + Name of backing field of property + + + + + + Set the password for encryption algorithm used to encrypt database data + + The password + + + + Set your custom encryption algorithm that implemets IEncryptor interface + + The instance of custom encryption algorithm + + + + Set build-in encryption algorithm + + Encryption algorithm + + + + Set custom fileName on disk of database file for Type T + + Type of objects + Name of database file on disk + + + + By default this is true for all types. Set this to false to not load childs entities of objects of Type provided + + Type for objects + true if related object need to be loaded, false if you want to load by Include(...) method + + + + Set true to raise Loading/Loaded events + + + + + + + Set if database will be encrypted or not + + + + + Database utilities + + + + + Rebuild and defragment indexes + + + + + + + Shrink database files including rawdata.sqr and indexes + + + + + Repair database files by fixing corrupted objects bytes + + + + + + + Repair database file of Type provided, the corrupted objects will be recuperated or deleted + + + + + + + Normal shrink, all blocks marked as free will be supressed + + + + + All database files will be parsed and check if a block can be marked as free then supress free blocks; + This operation can be slow if your database is big. + + + + + This includes Normal + ForceClaimSpace but also shrink of every db file; after this operation OID values of the stored objects may change. + + + + + Basic class that any siaqodb storable class may inherits from + + + + + Object Identifier(unique per Type) + + Main interface to be used by implementers to retrieve objects from database @@ -126,37 +272,6 @@ List of fields - - - List used to retrieve objects from database - - Type of objects from list - - - - Add obeject of Type T in the list - - object to be added - - - - Remove all elements from list - - - - - Determines if an element is in list - - The object to locate in list - bool value if object was found or not - - - - Remove object from list - - The object to remove - bool value if object was removed or not - Main class of siaqodb database engine responsible for storing, retrieving ,deleting objects on database files @@ -476,151 +591,36 @@ Raised after object is loaded from database - + - Class responsible for configurations of Siaqodb database engine + List used to retrieve objects from database + + Type of objects from list + + + + Add obeject of Type T in the list + + object to be added + + + + Remove all elements from list - + - Add an index for a field or automatic property of a certain Type,an Index can be added also by using Attribute: Sqo.Attributes.Index; - both ways of adding index are similar + Determines if an element is in list - Field name or automatic property name - Type that declare the field + The object to locate in list + bool value if object was found or not - + - Add an UniqueConstraint for a field of a certain Type,an UniqueConstraint can be added also by using Attribute: Sqo.Attributes.UniqueConstraint; - both ways of adding UniqueConstraint are similar - - Field name or automatic property name - Type that declare the field - - - - Put MaxLength for a string field or automatic property of a Type, MaxLength can be set also by using Attribute: Sqo.Attributes.MaxLength - - Field name or automatic property name - max length for a string - Type that declare the field - - - - Ignore a field or automatic property to be stored - - Name of field or automatic property - Type that declare the field - - - - Set the name of backing field for a property in case engine cannto discover it, this also can be set by attribute: Sqo.Attributes.UseVariable - - Name of property - Name of backing field of property - - - - - - Set the password for encryption algorithm used to encrypt database data - - The password - - - - Set your custom encryption algorithm that implemets IEncryptor interface - - The instance of custom encryption algorithm - - - - Set build-in encryption algorithm - - Encryption algorithm - - - - Set custom fileName on disk of database file for Type T - - Type of objects - Name of database file on disk - - - - By default this is true for all types. Set this to false to not load childs entities of objects of Type provided - - Type for objects - true if related object need to be loaded, false if you want to load by Include(...) method - - - - Set true to raise Loading/Loaded events - - - - - - - Set if database will be encrypted or not - - - - - Database utilities - - - - - Rebuild and defragment indexes - - - - - - - Shrink database files including rawdata.sqr and indexes - - - - - Repair database files by fixing corrupted objects bytes - - - - - - - Repair database file of Type provided, the corrupted objects will be recuperated or deleted - - - - - - - Normal shrink, all blocks marked as free will be supressed - - - - - All database files will be parsed and check if a block can be marked as free then supress free blocks; - This operation can be slow if your database is big. - - - - - This includes Normal + ForceClaimSpace but also shrink of every db file; after this operation OID values of the stored objects may change. - - - - - Basic class that any siaqodb storable class may inherits from - - - - - Object Identifier(unique per Type) + Remove object from list + The object to remove + bool value if object was removed or not diff --git a/Libraries/Siaqodb/siaqodb.dll b/Libraries/Siaqodb/siaqodb.dll index 06a93d402..872d240fb 100644 Binary files a/Libraries/Siaqodb/siaqodb.dll and b/Libraries/Siaqodb/siaqodb.dll differ diff --git a/NzbDrone.Core/Datastore/ObjectDbFactory.cs b/NzbDrone.Core/Datastore/ObjectDbFactory.cs index 2e15389de..c76c81614 100644 --- a/NzbDrone.Core/Datastore/ObjectDbFactory.cs +++ b/NzbDrone.Core/Datastore/ObjectDbFactory.cs @@ -32,8 +32,6 @@ namespace NzbDrone.Core.Datastore _diskProvider.CreateDirectory(dbPath); } - SiaqodbConfigurator.SetTrialLicense("uvhpW4hT5Rtq+Uoyq8MOm1Smon15foxV5iS5bAegIXU="); - var db = new Siaqodb(dbPath); return new SiaqodbProxy(db); diff --git a/NzbDrone/NzbDrone.csproj b/NzbDrone/NzbDrone.csproj index a5f349634..42c6716af 100644 --- a/NzbDrone/NzbDrone.csproj +++ b/NzbDrone/NzbDrone.csproj @@ -87,6 +87,10 @@ ..\packages\NLog.2.0.0.2000\lib\net40\NLog.dll + + False + ..\Libraries\Siaqodb\siaqodb.dll + @@ -116,6 +120,7 @@ + diff --git a/NzbDrone/licenses.licx b/NzbDrone/licenses.licx new file mode 100644 index 000000000..4b128908d --- /dev/null +++ b/NzbDrone/licenses.licx @@ -0,0 +1 @@ +Sqo.Siaqodb, siaqodb, Version=2.6.0.2,Culture=neutral,PublicKeyToken=c9a50dde883b61a3 \ No newline at end of file