import java.math.*;
import java.util.*;
import net.servicestack.client.*;
import com.google.gson.annotations.*;
import com.google.gson.reflect.*;
public class dtos
{
public static class QueryGitHubRepos extends QueryData<GithubRepo>
{
public String userName = null;
public String getUserName() { return userName; }
public QueryGitHubRepos setUserName(String value) { this.userName = value; return this; }
}
public static class QueryData<T> extends QueryBase
{
}
@DataContract
public static class QueryBase
{
@DataMember(Order=1)
public Integer skip = null;
@DataMember(Order=2)
public Integer take = null;
@DataMember(Order=3)
public String orderBy = null;
@DataMember(Order=4)
public String orderByDesc = null;
@DataMember(Order=5)
public String include = null;
@DataMember(Order=6)
public String fields = null;
@DataMember(Order=7)
public HashMap<String,String> meta = null;
public Integer getSkip() { return skip; }
public QueryBase setSkip(Integer value) { this.skip = value; return this; }
public Integer getTake() { return take; }
public QueryBase setTake(Integer value) { this.take = value; return this; }
public String getOrderBy() { return orderBy; }
public QueryBase setOrderBy(String value) { this.orderBy = value; return this; }
public String getOrderByDesc() { return orderByDesc; }
public QueryBase setOrderByDesc(String value) { this.orderByDesc = value; return this; }
public String getInclude() { return include; }
public QueryBase setInclude(String value) { this.include = value; return this; }
public String getFields() { return fields; }
public QueryBase setFields(String value) { this.fields = value; return this; }
public HashMap<String,String> getMeta() { return meta; }
public QueryBase setMeta(HashMap<String,String> value) { this.meta = value; return this; }
}
public static class GithubRepo
{
public Integer id = null;
public String name = null;
public String description = null;
public String homepage = null;
public String language = null;
public Integer watchers_Count = null;
public Integer stargazes_Count = null;
public Integer forks_Count = null;
public Integer open_Issues_Count = null;
public Integer size = null;
public String full_Name = null;
public Date created_at = null;
public Date pushed_At = null;
public Date updated_At = null;
public Boolean has_issues = null;
public Boolean has_Downloads = null;
public Boolean has_Wiki = null;
public Boolean has_Pages = null;
public Boolean fork = null;
public GithubUser owner = null;
public String svn_Url = null;
public String mirror_Url = null;
public String url = null;
public String ssh_Url = null;
public String html_Url = null;
public String clone_Url = null;
public String git_Url = null;
@SerializedName("private") public Boolean Private = null;
public Integer getId() { return id; }
public GithubRepo setId(Integer value) { this.id = value; return this; }
public String getName() { return name; }
public GithubRepo setName(String value) { this.name = value; return this; }
public String getDescription() { return description; }
public GithubRepo setDescription(String value) { this.description = value; return this; }
public String getHomepage() { return homepage; }
public GithubRepo setHomepage(String value) { this.homepage = value; return this; }
public String getLanguage() { return language; }
public GithubRepo setLanguage(String value) { this.language = value; return this; }
public Integer getWatchersCount() { return watchers_Count; }
public GithubRepo setWatchersCount(Integer value) { this.watchers_Count = value; return this; }
public Integer getStargazesCount() { return stargazes_Count; }
public GithubRepo setStargazesCount(Integer value) { this.stargazes_Count = value; return this; }
public Integer getForksCount() { return forks_Count; }
public GithubRepo setForksCount(Integer value) { this.forks_Count = value; return this; }
public Integer getOpenIssuesCount() { return open_Issues_Count; }
public GithubRepo setOpenIssuesCount(Integer value) { this.open_Issues_Count = value; return this; }
public Integer getSize() { return size; }
public GithubRepo setSize(Integer value) { this.size = value; return this; }
public String getFullName() { return full_Name; }
public GithubRepo setFullName(String value) { this.full_Name = value; return this; }
public Date getCreatedAt() { return created_at; }
public GithubRepo setCreatedAt(Date value) { this.created_at = value; return this; }
public Date getPushedAt() { return pushed_At; }
public GithubRepo setPushedAt(Date value) { this.pushed_At = value; return this; }
public Date getUpdatedAt() { return updated_At; }
public GithubRepo setUpdatedAt(Date value) { this.updated_At = value; return this; }
public Boolean isHasIssues() { return has_issues; }
public GithubRepo setHasIssues(Boolean value) { this.has_issues = value; return this; }
public Boolean isHasDownloads() { return has_Downloads; }
public GithubRepo setHasDownloads(Boolean value) { this.has_Downloads = value; return this; }
public Boolean isHasWiki() { return has_Wiki; }
public GithubRepo setHasWiki(Boolean value) { this.has_Wiki = value; return this; }
public Boolean isHasPages() { return has_Pages; }
public GithubRepo setHasPages(Boolean value) { this.has_Pages = value; return this; }
public Boolean isFork() { return fork; }
public GithubRepo setFork(Boolean value) { this.fork = value; return this; }
public GithubUser getOwner() { return owner; }
public GithubRepo setOwner(GithubUser value) { this.owner = value; return this; }
public String getSvnUrl() { return svn_Url; }
public GithubRepo setSvnUrl(String value) { this.svn_Url = value; return this; }
public String getMirrorUrl() { return mirror_Url; }
public GithubRepo setMirrorUrl(String value) { this.mirror_Url = value; return this; }
public String getUrl() { return url; }
public GithubRepo setUrl(String value) { this.url = value; return this; }
public String getSshUrl() { return ssh_Url; }
public GithubRepo setSshUrl(String value) { this.ssh_Url = value; return this; }
public String getHtmlUrl() { return html_Url; }
public GithubRepo setHtmlUrl(String value) { this.html_Url = value; return this; }
public String getCloneUrl() { return clone_Url; }
public GithubRepo setCloneUrl(String value) { this.clone_Url = value; return this; }
public String getGitUrl() { return git_Url; }
public GithubRepo setGitUrl(String value) { this.git_Url = value; return this; }
public Boolean isPrivate() { return Private; }
public GithubRepo setPrivate(Boolean value) { this.Private = value; return this; }
}
public static class GithubUser
{
public Integer id = null;
public String login = null;
public String avatar_Url = null;
public String url = null;
public Integer followers = null;
public Integer following = null;
public String type = null;
public Integer public_Gists = null;
public String location = null;
public String company = null;
public String html_Url = null;
public Integer public_Repos = null;
public Date created_At = null;
public String blog = null;
public String email = null;
public String name = null;
public Boolean hireable = null;
public String gravatar_Id = null;
public String bio = null;
public Integer getId() { return id; }
public GithubUser setId(Integer value) { this.id = value; return this; }
public String getLogin() { return login; }
public GithubUser setLogin(String value) { this.login = value; return this; }
public String getAvatarUrl() { return avatar_Url; }
public GithubUser setAvatarUrl(String value) { this.avatar_Url = value; return this; }
public String getUrl() { return url; }
public GithubUser setUrl(String value) { this.url = value; return this; }
public Integer getFollowers() { return followers; }
public GithubUser setFollowers(Integer value) { this.followers = value; return this; }
public Integer getFollowing() { return following; }
public GithubUser setFollowing(Integer value) { this.following = value; return this; }
public String getType() { return type; }
public GithubUser setType(String value) { this.type = value; return this; }
public Integer getPublicGists() { return public_Gists; }
public GithubUser setPublicGists(Integer value) { this.public_Gists = value; return this; }
public String getLocation() { return location; }
public GithubUser setLocation(String value) { this.location = value; return this; }
public String getCompany() { return company; }
public GithubUser setCompany(String value) { this.company = value; return this; }
public String getHtmlUrl() { return html_Url; }
public GithubUser setHtmlUrl(String value) { this.html_Url = value; return this; }
public Integer getPublicRepos() { return public_Repos; }
public GithubUser setPublicRepos(Integer value) { this.public_Repos = value; return this; }
public Date getCreatedAt() { return created_At; }
public GithubUser setCreatedAt(Date value) { this.created_At = value; return this; }
public String getBlog() { return blog; }
public GithubUser setBlog(String value) { this.blog = value; return this; }
public String getEmail() { return email; }
public GithubUser setEmail(String value) { this.email = value; return this; }
public String getName() { return name; }
public GithubUser setName(String value) { this.name = value; return this; }
public Boolean isHireable() { return hireable; }
public GithubUser setHireable(Boolean value) { this.hireable = value; return this; }
public String getGravatarId() { return gravatar_Id; }
public GithubUser setGravatarId(String value) { this.gravatar_Id = value; return this; }
public String getBio() { return bio; }
public GithubUser setBio(String value) { this.bio = value; return this; }
}
@DataContract
public static class QueryResponse<Customer>
{
@DataMember(Order=1)
public Integer offset = null;
@DataMember(Order=2)
public Integer total = null;
@DataMember(Order=3)
public ArrayList<Customer> results = null;
@DataMember(Order=4)
public HashMap<String,String> meta = null;
@DataMember(Order=5)
public ResponseStatus responseStatus = null;
public Integer getOffset() { return offset; }
public QueryResponse<Customer> setOffset(Integer value) { this.offset = value; return this; }
public Integer getTotal() { return total; }
public QueryResponse<Customer> setTotal(Integer value) { this.total = value; return this; }
public ArrayList<Customer> getResults() { return results; }
public QueryResponse<Customer> setResults(ArrayList<Customer> value) { this.results = value; return this; }
public HashMap<String,String> getMeta() { return meta; }
public QueryResponse<Customer> setMeta(HashMap<String,String> value) { this.meta = value; return this; }
public ResponseStatus getResponseStatus() { return responseStatus; }
public QueryResponse<Customer> setResponseStatus(ResponseStatus value) { this.responseStatus = value; return this; }
}
public static class Customer
{
public String customerId = null;
public String companyName = null;
public String address = null;
public String city = null;
public String region = null;
public String postalCode = null;
public String country = null;
public String phone = null;
public String fax = null;
public ArrayList<Order> orders = null;
public String getCustomerId() { return customerId; }
public Customer setCustomerId(String value) { this.customerId = value; return this; }
public String getCompanyName() { return companyName; }
public Customer setCompanyName(String value) { this.companyName = value; return this; }
public String getAddress() { return address; }
public Customer setAddress(String value) { this.address = value; return this; }
public String getCity() { return city; }
public Customer setCity(String value) { this.city = value; return this; }
public String getRegion() { return region; }
public Customer setRegion(String value) { this.region = value; return this; }
public String getPostalCode() { return postalCode; }
public Customer setPostalCode(String value) { this.postalCode = value; return this; }
public String getCountry() { return country; }
public Customer setCountry(String value) { this.country = value; return this; }
public String getPhone() { return phone; }
public Customer setPhone(String value) { this.phone = value; return this; }
public String getFax() { return fax; }
public Customer setFax(String value) { this.fax = value; return this; }
public ArrayList<Order> getOrders() { return orders; }
public Customer setOrders(ArrayList<Order> value) { this.orders = value; return this; }
}
public static class Order
{
public Integer orderId = null;
public String customerId = null;
public Date orderDate = null;
public Double total = null;
public Integer getOrderId() { return orderId; }
public Order setOrderId(Integer value) { this.orderId = value; return this; }
public String getCustomerId() { return customerId; }
public Order setCustomerId(String value) { this.customerId = value; return this; }
public Date getOrderDate() { return orderDate; }
public Order setOrderDate(Date value) { this.orderDate = value; return this; }
public Double getTotal() { return total; }
public Order setTotal(Double value) { this.total = value; return this; }
}
}
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/QueryGitHubRepos HTTP/1.1
Host: sharpscript.net
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
userName: String,
skip: 0,
take: 0,
orderBy: String,
orderByDesc: String,
include: String,
fields: String,
meta:
{
String: String
}
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { offset: 0, total: 0, results: [ { id: 0, name: String, description: String, homepage: String, language: String, watchers_Count: 0, stargazes_Count: 0, forks_Count: 0, open_Issues_Count: 0, size: 0, full_Name: String, created_at: 0001-01-01, pushed_At: 0001-01-01, updated_At: 0001-01-01, has_issues: False, has_Downloads: False, has_Wiki: False, has_Pages: False, fork: False, owner: { id: 0, login: String, avatar_Url: String, url: String, followers: 0, following: 0, type: String, public_Gists: 0, location: String, company: String, html_Url: String, public_Repos: 0, created_At: 0001-01-01, blog: String, email: String, name: String, hireable: False, gravatar_Id: String, bio: String }, svn_Url: String, mirror_Url: String, url: String, ssh_Url: String, html_Url: String, clone_Url: String, git_Url: String, private: False } ], meta: { String: String }, responseStatus: { errorCode: String, message: String, stackTrace: String, errors: [ { errorCode: String, fieldName: String, message: String, meta: { String: String } } ], meta: { String: String } } }