File: GSURLSessionTaskBody.h

package info (click to toggle)
gnustep-base 1.28.1%2Breally1.28.0-5
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 28,008 kB
  • sloc: objc: 223,137; ansic: 35,562; sh: 184; makefile: 128; cpp: 122; xml: 32
file content (46 lines) | stat: -rw-r--r-- 1,054 bytes parent folder | download
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
#ifndef	INCLUDED_GSURLSESSIONTASKBODY_H
#define	INCLUDED_GSURLSESSIONTASKBODY_H

#import "common.h"

@class	NSData;
@class	NSError;
@class	NSInputStream;
@class	NSNumber;
@class	NSURL;

typedef NS_ENUM(NSUInteger, GSURLSessionTaskBodyType) {
    GSURLSessionTaskBodyTypeNone,
    GSURLSessionTaskBodyTypeData,
    // Body data is read from the given file URL
    GSURLSessionTaskBodyTypeFile,
    // Body data is read from the given input stream
    GSURLSessionTaskBodyTypeStream,
};

@interface GSURLSessionTaskBody : NSObject
{
  GSURLSessionTaskBodyType  _type;
  NSData                    *_data;
  NSURL                     *_fileURL;
  NSInputStream             *_inputStream;
}

- (instancetype) init;
- (instancetype) initWithData: (NSData*)data;
- (instancetype) initWithFileURL: (NSURL*)fileURL;
- (instancetype) initWithInputStream: (NSInputStream*)inputStream;

- (GSURLSessionTaskBodyType) type;

- (NSData*) data;

- (NSURL*) fileURL;

- (NSInputStream*) inputStream;

- (NSNumber*) getBodyLengthWithError: (NSError**)error;

@end

#endif