import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;
public class dtos
{
public static class UpdateProfile implements IPatchDb<Profile>
{
public Integer id = null;
public PlayerRole role = null;
public PlayerRegion region = null;
public String username = null;
public Long highScore = null;
public Long gamesPlayed = null;
@Validate(Validator="InclusiveBetween(0,100)")
public Integer energy = null;
public String profileUrl = null;
public String coverUrl = null;
public Integer getId() { return id; }
public UpdateProfile setId(Integer value) { this.id = value; return this; }
public PlayerRole getRole() { return role; }
public UpdateProfile setRole(PlayerRole value) { this.role = value; return this; }
public PlayerRegion getRegion() { return region; }
public UpdateProfile setRegion(PlayerRegion value) { this.region = value; return this; }
public String getUsername() { return username; }
public UpdateProfile setUsername(String value) { this.username = value; return this; }
public Long getHighScore() { return highScore; }
public UpdateProfile setHighScore(Long value) { this.highScore = value; return this; }
public Long getGamesPlayed() { return gamesPlayed; }
public UpdateProfile setGamesPlayed(Long value) { this.gamesPlayed = value; return this; }
public Integer getEnergy() { return energy; }
public UpdateProfile setEnergy(Integer value) { this.energy = value; return this; }
public String getProfileUrl() { return profileUrl; }
public UpdateProfile setProfileUrl(String value) { this.profileUrl = value; return this; }
public String getCoverUrl() { return coverUrl; }
public UpdateProfile setCoverUrl(String value) { this.coverUrl = value; return this; }
}
public static enum PlayerRole
{
Leader,
Player,
NonPlayer;
}
public static enum PlayerRegion
{
Africa(1),
Americas(2),
Asia(3),
Australasia(4),
Europe(5);
private final int value;
PlayerRegion(final int intValue) { value = intValue; }
public int getValue() { return value; }
}
@DataContract
public static class IdResponse
{
@DataMember(Order=1)
public String id = null;
@DataMember(Order=2)
public ResponseStatus responseStatus = null;
public String getId() { return id; }
public IdResponse setId(String value) { this.id = value; return this; }
public ResponseStatus getResponseStatus() { return responseStatus; }
public IdResponse setResponseStatus(ResponseStatus value) { this.responseStatus = value; return this; }
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /csv/reply/UpdateProfile HTTP/1.1
Host: blazor-gallery.servicestack.net
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"id":0,"role":"Leader","region":"0","username":"String","highScore":0,"gamesPlayed":0,"energy":0,"profileUrl":"String","coverUrl":"String"}
HTTP/1.1 200 OK Content-Type: text/csv Content-Length: length {"id":"String","responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}}}