C# 클래스 DBreeze.Scheme

상속: IDisposable
파일 보기 프로젝트 열기: hhblaze/DBreeze 1 사용 예제들

공개 메소드들

메소드 설명
DeleteTable ( string userTableName ) : void

Deletes user table

Dispose ( ) : void
GetTablePathFromTableName ( string userTableName ) : string

Returns physical path to the table file, if table doesn't exists in the Scheme returns String.Empty

GetUserTableNamesStartingWith ( string mask ) : List

Returns List of user tables starting from specified mask. If mask is String.Empty returns all user tables

IfUserTableExists ( string userTableName ) : bool

Returns if user table exists

RenameTable ( string oldUserTableName, string newUserTableName ) : void

Renames user table, if it existed.

Safe, will make operation only when other threads stop to work with the oldTable

Scheme ( DBreezeEngine DBreezeEngine ) : System

비공개 메소드들

메소드 설명
CheckAlternativeTableLocationsIntersections ( string userTableName, string &alternativePath ) : bool

Checks if in configuration was supplied alternative path for table location. Returns true if intersection was found. Alternative Path equals to String.Empty - locate in Memory

CloseTables ( ulong?>.Dictionary closeOpenTables ) : void

Called by Transaction, when it's time to be Disposed and close tables. Tables will be closed only in case of other threads don't use it.

DeleteAllReleatedTableFiles ( string fullTableFilePath ) : void

Used by GetTableFor Write, if table is newly created and we have such file name

GetPhysicalPathToTheUserTable ( string userTableName ) : string

ONLY FOR INTERNAL NEEDS, lock must be handeled by outer procedure. Users must use GetTablePathFromTableName. Transactions Journal after start will try to delete RollbackFiles of the finished transactions. For this it needs to know exact pathes. For now all tables stored in one folder. Later we will have extra config file which lets to reside some of tables in the other folders. This function is an access globalizer to physical file locations by userTableName. !!!!TRAnJRNL, WHEN RESTORES ROLLBACK, MUST REFER TO Scheme trie settings in the future, FOR NOW DEFAULT

GetTable ( string userTableName ) : LTrie

Returns table for READ, WRITE FUNC

GetUserTableNameAsByte ( string tableName ) : byte[]

Adds static prefix to all user table names, to make selection of tables for different purposes easier with StartsWith function

GetUserTableNameAsString ( string tableName ) : string
OpenSchema ( ) : void
ReadUserLastFileNumber ( ) : void
RenameTableInternal ( string oldUserTableName, string newUserTableName ) : bool

Renames user table, if it existed.

If there are threads which are working with this table, rename will not be finished and will return false

메소드 상세

DeleteTable() 공개 메소드

Deletes user table
public DeleteTable ( string userTableName ) : void
userTableName string
리턴 void

Dispose() 공개 메소드

public Dispose ( ) : void
리턴 void

GetTablePathFromTableName() 공개 메소드

Returns physical path to the table file, if table doesn't exists in the Scheme returns String.Empty
public GetTablePathFromTableName ( string userTableName ) : string
userTableName string
리턴 string

GetUserTableNamesStartingWith() 공개 메소드

Returns List of user tables starting from specified mask. If mask is String.Empty returns all user tables
public GetUserTableNamesStartingWith ( string mask ) : List
mask string
리턴 List

IfUserTableExists() 공개 메소드

Returns if user table exists
public IfUserTableExists ( string userTableName ) : bool
userTableName string
리턴 bool

RenameTable() 공개 메소드

Renames user table, if it existed.

Safe, will make operation only when other threads stop to work with the oldTable

public RenameTable ( string oldUserTableName, string newUserTableName ) : void
oldUserTableName string
newUserTableName string
리턴 void

Scheme() 공개 메소드

public Scheme ( DBreezeEngine DBreezeEngine ) : System
DBreezeEngine DBreezeEngine
리턴 System