-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathDBFileWriter.h
More file actions
60 lines (45 loc) · 1.91 KB
/
DBFileWriter.h
File metadata and controls
60 lines (45 loc) · 1.91 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
/* -*- mode: objc -*-
Project: DataBasin
Copyright (C) 2017-2020 Free Software Foundation
Author: Riccardo Mottola
Created: 2017-09-20
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free
Software Foundation, Inc., 31 Milk Street #960789 Boston, MA 02196 USA.
*/
#import <Foundation/Foundation.h>
@protocol DBLoggerProtocol;
@class DBSObject;
@interface DBFileWriter : NSObject
{
id<DBLoggerProtocol> logger;
NSArray *fieldNames;
NSArray *fieldTypes;
NSFileHandle *file;
unsigned bomLength;
NSStringEncoding encoding;
BOOL writeOrdered;
}
- (id)initWithHandle:(NSFileHandle *)fileHandle;
- (void)setFileFormat:(NSString *)f;
- (void)setLogger:(id<DBLoggerProtocol>)l;
- (BOOL)writeFieldsOrdered;
- (void)setWriteFieldsOrdered:(BOOL)flag;
- (void)setFieldNames: (id)obj andWriteThem: (BOOL)flag;
- (void)setStringEncoding: (NSStringEncoding) enc;
- (void)setFieldNames:(id)obj andWriteThem:(BOOL)flag;
- (void)writeStart;
- (void)writeEnd;
- (void)writeDataSet:(NSArray *)array;
- (void)formatComplexObject:(NSMutableDictionary *)d withRoot:(NSString *)root inDict:(NSMutableDictionary *)dict inOrder:(NSMutableArray *)order;
- (void)formatSObject:(DBSObject *)so withRoot:(NSString *)root inDict:(NSMutableDictionary *)dict inOrder:(NSMutableArray *)order;
- (NSString *)formatOneLine:(id)data forHeader:(BOOL) headerFlag;
@end