fintp_base
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
FileMetadataStatePersist.h
Go to the documentation of this file.
1 /*
2 * FinTP - Financial Transactions Processing Application
3 * Copyright (C) 2013 Business Information Systems (Allevo) S.R.L.
4 *
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation, either version 3 of the License, or
8 * (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>
17 * or contact Allevo at : 031281 Bucuresti, 23C Calea Vitan, Romania,
18 * phone +40212554577, office@allevo.ro <mailto:office@allevo.ro>, www.allevo.ro.
19 */
20 
21 #ifndef FILEMETADATASTATEPERSIST_H
22 #define FILEMETADATASTATEPERSIST_H
23 
25 
26 namespace FinTP
27 {
28  // persists metadata to a file.
30  {
31  protected :
32 
33  // persists a setting ( storageData ) to a file container
34  // storageKey = name of the metadata file ( container )
35  // storageData = key-value pair to persist
36  void internalSet( const string& storageKey, DictionaryEntry storageData );
37 
38  // retrieves a name-value pair from the file container
39  // storageKey = name of the metadata file ( container )
40  // key = key of the pair to retrieve
41  DictionaryEntry internalGet( const string& storageKey, const string& key );
42 
43  int internalGetItemCount( const string& storageKey ) const { return -1; }
44 
45  // creates a new storage ( metadata file )
46  void internalInitStorage( const string& storageKey );
47 
48  // destroys the storage ( removes metadata file )
49  void internalReleaseStorage( const string& storageKey );
50 
51  public :
52 
55  };
56 }
57 
58 #endif // FILEMETADATASTATEPERSIST_H