import Foundation
import ServiceStack
public class HelloWithEnumList : Codable
{
public var enumProp:[EnumType] = []
public var enumWithValues:[EnumWithValues] = []
public var nullableEnumProp:[EnumType?] = []
public var enumFlags:[EnumFlags] = []
public var enumStyle:[EnumStyle] = []
required public init(){}
}
public enum EnumType : String, Codable
{
case Value1
case Value2
case Value3
}
public enum EnumWithValues : String, Codable
{
case None
case Value1
case Value2
}
// @Flags()
public enum EnumFlags : Int, Codable
{
case Value0 = 0
case Value1 = 1
case Value2 = 2
case Value3 = 4
case Value123 = 7
}
public enum EnumStyle : String, Codable
{
case lower
case UPPER
case PascalCase
case camelCase
case camelUPPER
case PascalUPPER
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /jsonl/oneway/HelloWithEnumList HTTP/1.1
Host: test.servicestack.net
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"enumProp":["Value1"],"enumWithValues":["None"],"nullableEnumProp":["Value1"],"enumFlags":[0],"enumStyle":["lower"]}