import java.math.*
import java.util.*
import java.io.InputStream
import net.servicestack.client.*
import com.google.gson.annotations.*
import com.google.gson.reflect.*
open class QueryPostComments : QueryDb<PostComment>()
{
open var id:Long? = null
open var userId:Long? = null
open var postId:Long? = null
open var contentContains:String? = null
open var upVotesAbove:Long? = null
open var upVotesBelow:Long? = null
open var downVotesAbove:Long? = null
open var downVotes:Long? = null
open var favoritesAbove:Long? = null
open var favoritesBelow:Long? = null
open var wordCountAbove:Int? = null
open var wordCountBelow:Int? = null
open var reportCountAbove:Int? = null
open var reportCountBelow:Int? = null
}
open class QueryDb<T> : QueryBase()
{
}
@DataContract
open class QueryBase
{
@DataMember(Order=1)
open var skip:Int? = null
@DataMember(Order=2)
open var take:Int? = null
@DataMember(Order=3)
open var orderBy:String? = null
@DataMember(Order=4)
open var orderByDesc:String? = null
@DataMember(Order=5)
open var include:String? = null
@DataMember(Order=6)
open var fields:String? = null
@DataMember(Order=7)
open var meta:HashMap<String,String>? = null
}
open class PostComment
{
open var id:Long? = null
open var postId:Long? = null
open var userId:Int? = null
@Ignore()
open var userProfileUrl:String? = null
open var replyId:Long? = null
@StringLength(MaximumLength=2147483647)
open var content:String? = null
@StringLength(MaximumLength=2147483647)
open var contentHtml:String? = null
open var score:Int? = null
open var rank:Int? = null
open var upVotes:Long? = null
open var downVotes:Long? = null
open var favorites:Long? = null
open var wordCount:Int? = null
open var reportCount:Int? = null
open var deleted:Date? = null
open var hidden:Date? = null
open var modified:Date? = null
open var created:Date? = null
open var createdBy:String? = null
open var refId:Long? = null
open var refSource:String? = null
open var refUrn:String? = null
}
@DataContract
open class QueryResponse<T>
{
@DataMember(Order=1)
open var offset:Int? = null
@DataMember(Order=2)
open var total:Int? = null
@DataMember(Order=3)
open var results:ArrayList<Post> = ArrayList<Post>()
@DataMember(Order=4)
open var meta:HashMap<String,String>? = null
@DataMember(Order=5)
open var responseStatus:ResponseStatus? = null
}
open class Post
{
open var id:Long? = null
open var organizationId:Int? = null
open var userId:Int? = null
@Ignore()
open var userProfileUrl:String? = null
@SerializedName("type") open var Type:PostType? = null
open var categoryId:Int? = null
open var title:String? = null
open var slug:String? = null
open var url:String? = null
open var imageUrl:String? = null
@StringLength(MaximumLength=2147483647)
open var content:String? = null
@StringLength(MaximumLength=2147483647)
open var contentHtml:String? = null
open var pinCommentId:Long? = null
open var technologyIds:ArrayList<Int> = ArrayList<Int>()
open var fromDate:Date? = null
open var toDate:Date? = null
open var location:String? = null
open var metaType:String? = null
open var meta:String? = null
open var approved:Boolean? = null
open var upVotes:Long? = null
open var downVotes:Long? = null
open var points:Long? = null
open var views:Long? = null
open var favorites:Long? = null
open var subscribers:Int? = null
open var replyCount:Int? = null
open var commentsCount:Int? = null
open var wordCount:Int? = null
open var reportCount:Int? = null
open var linksCount:Int? = null
open var linkedToCount:Int? = null
open var score:Int? = null
open var rank:Int? = null
open var labels:ArrayList<String>? = null
open var refUserIds:ArrayList<Int>? = null
open var refLinks:ArrayList<String>? = null
open var muteUserIds:ArrayList<Int>? = null
open var lastCommentDate:Date? = null
open var lastCommentId:Long? = null
open var lastCommentUserId:Int? = null
open var deleted:Date? = null
open var deletedBy:String? = null
open var locked:Date? = null
open var lockedBy:String? = null
open var hidden:Date? = null
open var hiddenBy:String? = null
open var status:String? = null
open var statusDate:Date? = null
open var statusBy:String? = null
open var archived:Boolean? = null
open var bumped:Date? = null
open var created:Date? = null
open var createdBy:String? = null
open var modified:Date? = null
open var modifiedBy:String? = null
open var refId:Long? = null
open var refSource:String? = null
open var refUrn:String? = null
}
enum class PostType
{
Announcement,
Post,
Showcase,
Question,
Request,
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /xml/reply/QueryPostComments HTTP/1.1
Host: techstacks.io
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<QueryPostComments xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TechStacks.ServiceModel">
<Skip xmlns="http://schemas.servicestack.net/types">0</Skip>
<Take xmlns="http://schemas.servicestack.net/types">0</Take>
<OrderBy xmlns="http://schemas.servicestack.net/types">String</OrderBy>
<OrderByDesc xmlns="http://schemas.servicestack.net/types">String</OrderByDesc>
<Include xmlns="http://schemas.servicestack.net/types">String</Include>
<Fields xmlns="http://schemas.servicestack.net/types">String</Fields>
<Meta xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" xmlns="http://schemas.servicestack.net/types">
<d2p1:KeyValueOfstringstring>
<d2p1:Key>String</d2p1:Key>
<d2p1:Value>String</d2p1:Value>
</d2p1:KeyValueOfstringstring>
</Meta>
<ContentContains>String</ContentContains>
<DownVotes>0</DownVotes>
<DownVotesAbove>0</DownVotesAbove>
<FavoritesAbove>0</FavoritesAbove>
<FavoritesBelow>0</FavoritesBelow>
<Id>0</Id>
<PostId>0</PostId>
<ReportCountAbove>0</ReportCountAbove>
<ReportCountBelow>0</ReportCountBelow>
<UpVotesAbove>0</UpVotesAbove>
<UpVotesBelow>0</UpVotesBelow>
<UserId>0</UserId>
<WordCountAbove>0</WordCountAbove>
<WordCountBelow>0</WordCountBelow>
</QueryPostComments>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<QueryResponseOfPostCommentclPpLQp2 xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types">
<Offset>0</Offset>
<Total>0</Total>
<Results xmlns:d2p1="http://schemas.datacontract.org/2004/07/TechStacks.ServiceModel.Types">
<d2p1:PostComment>
<d2p1:Content>String</d2p1:Content>
<d2p1:ContentHtml>String</d2p1:ContentHtml>
<d2p1:Created>0001-01-01T00:00:00</d2p1:Created>
<d2p1:CreatedBy>String</d2p1:CreatedBy>
<d2p1:Deleted>0001-01-01T00:00:00</d2p1:Deleted>
<d2p1:DownVotes>0</d2p1:DownVotes>
<d2p1:Favorites>0</d2p1:Favorites>
<d2p1:Hidden>0001-01-01T00:00:00</d2p1:Hidden>
<d2p1:Id>0</d2p1:Id>
<d2p1:Modified>0001-01-01T00:00:00</d2p1:Modified>
<d2p1:PostId>0</d2p1:PostId>
<d2p1:Rank>0</d2p1:Rank>
<d2p1:RefId>0</d2p1:RefId>
<d2p1:RefSource>String</d2p1:RefSource>
<d2p1:RefUrn>String</d2p1:RefUrn>
<d2p1:ReplyId>0</d2p1:ReplyId>
<d2p1:ReportCount>0</d2p1:ReportCount>
<d2p1:Score>0</d2p1:Score>
<d2p1:UpVotes>0</d2p1:UpVotes>
<d2p1:UserId>0</d2p1:UserId>
<d2p1:UserProfileUrl>String</d2p1:UserProfileUrl>
<d2p1:WordCount>0</d2p1:WordCount>
</d2p1:PostComment>
</Results>
<Meta xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:KeyValueOfstringstring>
<d2p1:Key>String</d2p1:Key>
<d2p1:Value>String</d2p1:Value>
</d2p1:KeyValueOfstringstring>
</Meta>
<ResponseStatus>
<ErrorCode>String</ErrorCode>
<Message>String</Message>
<StackTrace>String</StackTrace>
<Errors>
<ResponseError>
<ErrorCode>String</ErrorCode>
<FieldName>String</FieldName>
<Message>String</Message>
<Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d5p1:KeyValueOfstringstring>
<d5p1:Key>String</d5p1:Key>
<d5p1:Value>String</d5p1:Value>
</d5p1:KeyValueOfstringstring>
</Meta>
</ResponseError>
</Errors>
<Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d3p1:KeyValueOfstringstring>
<d3p1:Key>String</d3p1:Key>
<d3p1:Value>String</d3p1:Value>
</d3p1:KeyValueOfstringstring>
</Meta>
</ResponseStatus>
</QueryResponseOfPostCommentclPpLQp2>