Files
RestKit/Code/Network/RKRequestSerializable.h
Jeremy Ellison 6a5ee2af7e Revert "Remove per-file copyrights"
This reverts commit 91e7c6bb5e.
2011-01-12 15:27:19 -05:00

54 lines
1.5 KiB
Objective-C

//
// RKRequestSerializable.h
// RestKit
//
// Created by Blake Watters on 8/3/09.
// Copyright 2009 Two Toasters. All rights reserved.
//
/*
* This protocol is implemented by objects that can be serialized into a representation suitable
* for transmission over a REST request. Suitable serializations are x-www-form-urlencoded and
* multipart/form-data.
*/
@protocol RKRequestSerializable
/**
* The value of the Content-Type header for the HTTP Body representation of the serialization
*/
- (NSString*)HTTPHeaderValueForContentType;
@optional
/**
* NOTE: One of the following methods MUST be implemented for your serializable implementation
* to be complete. If you are allowing serialization of a small in-memory data structure, implement
* HTTPBody as it is much simpler. HTTPBodyStream provides support for streaming a large payload
* from disk instead of memory.
*/
/**
* An NSData representing the HTTP Body serialization of the object implementing the protocol
*/
- (NSData*)HTTPBody;
/**
* Returns an input stream for reading the serialization as a stream. Used to provide support for
* handling large HTTP payloads.
*/
- (NSInputStream*)HTTPBodyStream;
/**
* Returns the length of the HTTP Content-Length header
*/
- (NSUInteger)HTTPHeaderValueForContentLength;
/**
* The value of the Content-Type header for the HTTP Body representation of the serialization
*
* @deprecated Implement HTTPHeaderValueForContentType instead
*/
- (NSString*)ContentTypeHTTPHeader DEPRECATED_ATTRIBUTE;
@end