import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;
import com.google.gson.annotations.*;
import com.google.gson.reflect.*;
public class dtos
{
@ValidateRequest(Validator="IsAuthenticated")
public static class UpdateAlbum implements IPatchDb<Album>
{
public Integer id = null;
public String name = null;
public String description = null;
public String slug = null;
public ArrayList<String> tags = null;
public Integer primaryArtifactId = null;
public Boolean unpinPrimaryArtifact = null;
public ArrayList<Integer> addArtifactIds = null;
public ArrayList<Integer> removeArtifactIds = null;
public Integer getId() { return id; }
public UpdateAlbum setId(Integer value) { this.id = value; return this; }
public String getName() { return name; }
public UpdateAlbum setName(String value) { this.name = value; return this; }
public String getDescription() { return description; }
public UpdateAlbum setDescription(String value) { this.description = value; return this; }
public String getSlug() { return slug; }
public UpdateAlbum setSlug(String value) { this.slug = value; return this; }
public ArrayList<String> getTags() { return tags; }
public UpdateAlbum setTags(ArrayList<String> value) { this.tags = value; return this; }
public Integer getPrimaryArtifactId() { return primaryArtifactId; }
public UpdateAlbum setPrimaryArtifactId(Integer value) { this.primaryArtifactId = value; return this; }
public Boolean isUnpinPrimaryArtifact() { return unpinPrimaryArtifact; }
public UpdateAlbum setUnpinPrimaryArtifact(Boolean value) { this.unpinPrimaryArtifact = value; return this; }
public ArrayList<Integer> getAddArtifactIds() { return addArtifactIds; }
public UpdateAlbum setAddArtifactIds(ArrayList<Integer> value) { this.addArtifactIds = value; return this; }
public ArrayList<Integer> getRemoveArtifactIds() { return removeArtifactIds; }
public UpdateAlbum setRemoveArtifactIds(ArrayList<Integer> value) { this.removeArtifactIds = value; return this; }
}
public static class Album extends AuditBase
{
public Integer id = null;
public String name = null;
public String description = null;
public String slug = null;
public ArrayList<String> tags = new ArrayList<String>();
public String refId = null;
public Integer ownerId = null;
public String ownerRef = null;
public Integer primaryArtifactId = null;
@SerializedName("private") public Boolean Private = null;
public Integer rating = null;
public Integer likesCount = null;
public Integer downloadsCount = null;
public Integer searchCount = null;
public Integer score = null;
public Integer rank = null;
public Integer prefColumns = null;
public ArrayList<AlbumArtifact> artifacts = new ArrayList<AlbumArtifact>();
public Integer getId() { return id; }
public Album setId(Integer value) { this.id = value; return this; }
public String getName() { return name; }
public Album setName(String value) { this.name = value; return this; }
public String getDescription() { return description; }
public Album setDescription(String value) { this.description = value; return this; }
public String getSlug() { return slug; }
public Album setSlug(String value) { this.slug = value; return this; }
public ArrayList<String> getTags() { return tags; }
public Album setTags(ArrayList<String> value) { this.tags = value; return this; }
public String getRefId() { return refId; }
public Album setRefId(String value) { this.refId = value; return this; }
public Integer getOwnerId() { return ownerId; }
public Album setOwnerId(Integer value) { this.ownerId = value; return this; }
public String getOwnerRef() { return ownerRef; }
public Album setOwnerRef(String value) { this.ownerRef = value; return this; }
public Integer getPrimaryArtifactId() { return primaryArtifactId; }
public Album setPrimaryArtifactId(Integer value) { this.primaryArtifactId = value; return this; }
public Boolean isPrivate() { return Private; }
public Album setPrivate(Boolean value) { this.Private = value; return this; }
public Integer getRating() { return rating; }
public Album setRating(Integer value) { this.rating = value; return this; }
public Integer getLikesCount() { return likesCount; }
public Album setLikesCount(Integer value) { this.likesCount = value; return this; }
public Integer getDownloadsCount() { return downloadsCount; }
public Album setDownloadsCount(Integer value) { this.downloadsCount = value; return this; }
public Integer getSearchCount() { return searchCount; }
public Album setSearchCount(Integer value) { this.searchCount = value; return this; }
public Integer getScore() { return score; }
public Album setScore(Integer value) { this.score = value; return this; }
public Integer getRank() { return rank; }
public Album setRank(Integer value) { this.rank = value; return this; }
public Integer getPrefColumns() { return prefColumns; }
public Album setPrefColumns(Integer value) { this.prefColumns = value; return this; }
public ArrayList<AlbumArtifact> getArtifacts() { return artifacts; }
public Album setArtifacts(ArrayList<AlbumArtifact> value) { this.artifacts = value; return this; }
}
@DataContract
public static class AuditBase
{
@DataMember(Order=1)
public Date createdDate = null;
@DataMember(Order=2)
@Required()
public String createdBy = null;
@DataMember(Order=3)
public Date modifiedDate = null;
@DataMember(Order=4)
@Required()
public String modifiedBy = null;
@DataMember(Order=5)
public Date deletedDate = null;
@DataMember(Order=6)
public String deletedBy = null;
public Date getCreatedDate() { return createdDate; }
public AuditBase setCreatedDate(Date value) { this.createdDate = value; return this; }
public String getCreatedBy() { return createdBy; }
public AuditBase setCreatedBy(String value) { this.createdBy = value; return this; }
public Date getModifiedDate() { return modifiedDate; }
public AuditBase setModifiedDate(Date value) { this.modifiedDate = value; return this; }
public String getModifiedBy() { return modifiedBy; }
public AuditBase setModifiedBy(String value) { this.modifiedBy = value; return this; }
public Date getDeletedDate() { return deletedDate; }
public AuditBase setDeletedDate(Date value) { this.deletedDate = value; return this; }
public String getDeletedBy() { return deletedBy; }
public AuditBase setDeletedBy(String value) { this.deletedBy = value; return this; }
}
public static class AlbumArtifact
{
public Integer id = null;
@References(Type=Album.class)
public Integer albumId = null;
@References(Type=Artifact.class)
public Integer artifactId = null;
public String description = null;
public Date createdDate = null;
public Date modifiedDate = null;
public Artifact artifact = null;
public Integer getId() { return id; }
public AlbumArtifact setId(Integer value) { this.id = value; return this; }
public Integer getAlbumId() { return albumId; }
public AlbumArtifact setAlbumId(Integer value) { this.albumId = value; return this; }
public Integer getArtifactId() { return artifactId; }
public AlbumArtifact setArtifactId(Integer value) { this.artifactId = value; return this; }
public String getDescription() { return description; }
public AlbumArtifact setDescription(String value) { this.description = value; return this; }
public Date getCreatedDate() { return createdDate; }
public AlbumArtifact setCreatedDate(Date value) { this.createdDate = value; return this; }
public Date getModifiedDate() { return modifiedDate; }
public AlbumArtifact setModifiedDate(Date value) { this.modifiedDate = value; return this; }
public Artifact getArtifact() { return artifact; }
public AlbumArtifact setArtifact(Artifact value) { this.artifact = value; return this; }
}
public static class Artifact extends AuditBase
{
public Integer id = null;
@References(Type=Creative.class)
public Integer creativeId = null;
public String fileName = null;
public String filePath = null;
public String contentType = null;
public Long contentLength = null;
public Integer width = null;
public Integer height = null;
public BigInteger seed = null;
public String prompt = null;
public Boolean nsfw = null;
public Long averageHash = null;
public Long perceptualHash = null;
public Long differenceHash = null;
public String background = null;
public String lqip = null;
public Integer quality = null;
public Integer likesCount = null;
public Integer albumsCount = null;
public Integer downloadsCount = null;
public Integer searchCount = null;
public Integer temporalScore = null;
public Integer score = null;
public Integer rank = null;
public String refId = null;
public HashMap<String,String> versions = new HashMap<String,String>();
public Integer getId() { return id; }
public Artifact setId(Integer value) { this.id = value; return this; }
public Integer getCreativeId() { return creativeId; }
public Artifact setCreativeId(Integer value) { this.creativeId = value; return this; }
public String getFileName() { return fileName; }
public Artifact setFileName(String value) { this.fileName = value; return this; }
public String getFilePath() { return filePath; }
public Artifact setFilePath(String value) { this.filePath = value; return this; }
public String getContentType() { return contentType; }
public Artifact setContentType(String value) { this.contentType = value; return this; }
public Long getContentLength() { return contentLength; }
public Artifact setContentLength(Long value) { this.contentLength = value; return this; }
public Integer getWidth() { return width; }
public Artifact setWidth(Integer value) { this.width = value; return this; }
public Integer getHeight() { return height; }
public Artifact setHeight(Integer value) { this.height = value; return this; }
public BigInteger getSeed() { return seed; }
public Artifact setSeed(BigInteger value) { this.seed = value; return this; }
public String getPrompt() { return prompt; }
public Artifact setPrompt(String value) { this.prompt = value; return this; }
public Boolean isNsfw() { return nsfw; }
public Artifact setNsfw(Boolean value) { this.nsfw = value; return this; }
public Long getAverageHash() { return averageHash; }
public Artifact setAverageHash(Long value) { this.averageHash = value; return this; }
public Long getPerceptualHash() { return perceptualHash; }
public Artifact setPerceptualHash(Long value) { this.perceptualHash = value; return this; }
public Long getDifferenceHash() { return differenceHash; }
public Artifact setDifferenceHash(Long value) { this.differenceHash = value; return this; }
public String getBackground() { return background; }
public Artifact setBackground(String value) { this.background = value; return this; }
public String getLqip() { return lqip; }
public Artifact setLqip(String value) { this.lqip = value; return this; }
public Integer getQuality() { return quality; }
public Artifact setQuality(Integer value) { this.quality = value; return this; }
public Integer getLikesCount() { return likesCount; }
public Artifact setLikesCount(Integer value) { this.likesCount = value; return this; }
public Integer getAlbumsCount() { return albumsCount; }
public Artifact setAlbumsCount(Integer value) { this.albumsCount = value; return this; }
public Integer getDownloadsCount() { return downloadsCount; }
public Artifact setDownloadsCount(Integer value) { this.downloadsCount = value; return this; }
public Integer getSearchCount() { return searchCount; }
public Artifact setSearchCount(Integer value) { this.searchCount = value; return this; }
public Integer getTemporalScore() { return temporalScore; }
public Artifact setTemporalScore(Integer value) { this.temporalScore = value; return this; }
public Integer getScore() { return score; }
public Artifact setScore(Integer value) { this.score = value; return this; }
public Integer getRank() { return rank; }
public Artifact setRank(Integer value) { this.rank = value; return this; }
public String getRefId() { return refId; }
public Artifact setRefId(String value) { this.refId = value; return this; }
public HashMap<String,String> getVersions() { return versions; }
public Artifact setVersions(HashMap<String,String> value) { this.versions = 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/UpdateAlbum HTTP/1.1
Host: blazordiffusion.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
id: 0,
name: String,
description: String,
slug: String,
tags:
[
String
],
primaryArtifactId: 0,
unpinPrimaryArtifact: False,
addArtifactIds:
[
0
],
removeArtifactIds:
[
0
]
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { id: 0, name: String, description: String, slug: String, tags: [ String ], refId: String, ownerId: 0, ownerRef: String, primaryArtifactId: 0, private: False, rating: 0, likesCount: 0, downloadsCount: 0, searchCount: 0, score: 0, rank: 0, prefColumns: 0, artifacts: [ { id: 0, albumId: 0, artifactId: 0, description: String, createdDate: 0001-01-01, modifiedDate: 0001-01-01, artifact: { id: 0, creativeId: 0, fileName: String, filePath: String, contentType: String, contentLength: 0, width: 0, height: 0, seed: 0, prompt: String, nsfw: False, averageHash: 0, perceptualHash: 0, differenceHash: 0, background: String, lqip: String, quality: 0, likesCount: 0, albumsCount: 0, downloadsCount: 0, searchCount: 0, temporalScore: 0, score: 0, rank: 0, refId: String, versions: { String: String }, createdDate: 0001-01-01, createdBy: String, modifiedDate: 0001-01-01, modifiedBy: String, deletedDate: 0001-01-01, deletedBy: String } } ], createdDate: 0001-01-01, createdBy: String, modifiedDate: 0001-01-01, modifiedBy: String, deletedDate: 0001-01-01, deletedBy: String }