import Foundation
import ServiceStack
public class HelloInnerTypes : Codable
{
required public init(){}
}
public class HelloInnerTypesResponse : Codable
{
public var innerType:InnerType
public var innerEnum:InnerEnum
required public init(){}
}
public class InnerType : Codable
{
public var id:Int
public var name:String
required public init(){}
}
public enum InnerEnum : String, Codable
{
case Foo
case Bar
case Baz
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /jsv/reply/HelloInnerTypes HTTP/1.1
Host: test.servicestack.net
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { innerType: { id: 0, name: String }, innerEnum: Foo }