Skip to content
Snippets Groups Projects
Commit 1a7c86f4 authored by John Carlson's avatar John Carlson
Browse files

API models to Kotlin

parent e31b881c
No related branches found
No related tags found
No related merge requests found
Pipeline #
Showing
with 244 additions and 664 deletions
package com.commit451.gitlab.model.api
import com.squareup.moshi.Json
import org.parceler.Parcel
@Parcel
class ArtifactsFile {
@Json(name = "filename")
lateinit var fileName: String
@Json(name = "size")
var size: Long = 0
}
package com.commit451.gitlab.model.api;
import com.squareup.moshi.Json;
import org.parceler.Parcel;
import java.util.Date;
/**
* http://docs.gitlab.com/ce/api/award_emoji.html
*/
@Parcel
public class AwardEmoji {
@Json(name = "id")
String id;
@Json(name = "name")
String name;
@Json(name = "user")
UserBasic user;
@Json(name = "created_at")
Date createdAt;
@Json(name = "updated_at")
Date updatedAt;
@Json(name = "awardable_id")
int awardableId;
@Json(name = "awardable_type")
String awardableType;
public String getId() {
return id;
}
public String getName() {
return name;
}
public UserBasic getUser() {
return user;
}
public Date getCreatedAt() {
return createdAt;
}
public Date getUpdatedAt() {
return updatedAt;
}
public int getAwardableId() {
return awardableId;
}
public String getAwardableType() {
return awardableType;
}
}
package com.commit451.gitlab.model.api
import com.squareup.moshi.Json
import org.parceler.Parcel
import java.util.*
/**
* http://docs.gitlab.com/ce/api/award_emoji.html
*/
@Parcel
class AwardEmoji {
@Json(name = "id")
var id: String? = null
@Json(name = "name")
var name: String? = null
@Json(name = "user")
var user: UserBasic? = null
@Json(name = "created_at")
var createdAt: Date? = null
@Json(name = "updated_at")
var updatedAt: Date? = null
@Json(name = "awardable_id")
var awardableId: Int = 0
@Json(name = "awardable_type")
var awardableType: String? = null
}
package com.commit451.gitlab.model.api;
import com.commit451.gitlab.util.ObjectUtil;
import com.squareup.moshi.Json;
import org.parceler.Parcel;
@Parcel
public class Branch {
@Json(name = "name")
String name;
@Json(name = "protected")
boolean isProtected;
public Branch() {}
public String getName() {
return name;
}
public boolean isProtected() {
return isProtected;
}
@Override
public boolean equals(Object o) {
if (!(o instanceof Branch)) {
return false;
}
Branch branch = (Branch) o;
return ObjectUtil.INSTANCE.equals(name, branch.name);
}
@Override
public int hashCode() {
return ObjectUtil.INSTANCE.hash(name);
}
@Override
public String toString() {
return name;
}
}
package com.commit451.gitlab.model.api
import com.commit451.gitlab.util.ObjectUtil
import com.squareup.moshi.Json
import org.parceler.Parcel
@Parcel
class Branch {
@Json(name = "name")
var name: String? = null
@Json(name = "protected")
var isProtected: Boolean = false
override fun equals(o: Any?): Boolean {
if (o !is Branch) {
return false
}
val branch = o as Branch?
return ObjectUtil.equals(name, branch!!.name)
}
override fun hashCode(): Int {
return ObjectUtil.hash(name!!)
}
}
package com.commit451.gitlab.model.api;
import com.squareup.moshi.Json;
import org.parceler.Parcel;
import java.util.Date;
/**
* Represents a build
*/
@Parcel
public class Build {
@Json(name = "commit")
RepositoryCommit commit;
@Json(name = "coverage")
String coverage;
@Json(name = "created_at")
Date createdAt;
@Json(name = "artifacts_file")
ArtifactsFile artifactsFile;
@Json(name = "finished_at")
Date finishedAt;
@Json(name = "id")
long id;
@Json(name = "name")
String name;
@Json(name = "ref")
String ref;
@Json(name = "runner")
Runner runner;
@Json(name = "pipeline")
Pipeline pipeline;
@Json(name = "stage")
String stage;
@Json(name = "started_at")
Date startedAt;
@Json(name = "status")
String status;
@Json(name = "tag")
boolean tag;
@Json(name = "user")
User user;
public RepositoryCommit getCommit() {
return commit;
}
public String getCoverage() {
return coverage;
}
public Date getCreatedAt() {
return createdAt;
}
public ArtifactsFile getArtifactsFile() {
return artifactsFile;
}
public Date getFinishedAt() {
return finishedAt;
}
public long getId() {
return id;
}
public String getName() {
return name;
}
public String getRef() {
return ref;
}
public Runner getRunner() {
return runner;
}
public Pipeline getPipeline() {
return pipeline;
}
public String getStage() {
return stage;
}
public Date getStartedAt() {
return startedAt;
}
public String getStatus() {
return status;
}
public boolean isTag() {
return tag;
}
public User getUser() {
return user;
}
}
package com.commit451.gitlab.model.api
import com.squareup.moshi.Json
import org.parceler.Parcel
import java.util.*
/**
* Represents a build
*/
@Parcel
class Build {
@Json(name = "commit")
var commit: RepositoryCommit? = null
@Json(name = "coverage")
var coverage: String? = null
@Json(name = "created_at")
lateinit var createdAt: Date
@Json(name = "artifacts_file")
var artifactsFile: ArtifactsFile? = null
@Json(name = "finished_at")
var finishedAt: Date? = null
@Json(name = "id")
var id: Long = 0
@Json(name = "name")
var name: String? = null
@Json(name = "ref")
var ref: String? = null
@Json(name = "runner")
var runner: Runner? = null
@Json(name = "pipeline")
var pipeline: Pipeline? = null
@Json(name = "stage")
var stage: String? = null
@Json(name = "started_at")
var startedAt: Date? = null
@Json(name = "status")
var status: String? = null
@Json(name = "tag")
var isTag: Boolean = false
@Json(name = "user")
var user: User? = null
}
package com.commit451.gitlab.model.api;
import com.commit451.gitlab.util.ObjectUtil;
import com.squareup.moshi.Json;
import org.parceler.Parcel;
@Parcel
public class CommitUser {
@Json(name = "id")
String id;
@Json(name = "name")
String name;
@Json(name = "username")
String username;
@Json(name = "state")
String state;
@Json(name = "avatar_url")
String avatarUrl;
@Json(name = "web_url")
String webUrl;
public CommitUser() {}
public String getId() {
return id;
}
public String getName() {
return name;
}
public String getUsername() {
return username;
}
public String getState() {
return state;
}
public String getAvatarUrl() {
return avatarUrl;
}
public String getWebUrl() {
return webUrl;
}
@Override
public boolean equals(Object o) {
if (!(o instanceof CommitUser)) {
return false;
}
CommitUser commit = (CommitUser) o;
return ObjectUtil.INSTANCE.equals(id, commit.id);
}
@Override
public int hashCode() {
return ObjectUtil.INSTANCE.hash(id);
}
}
package com.commit451.gitlab.model.api
import com.commit451.gitlab.util.ObjectUtil
import com.squareup.moshi.Json
import org.parceler.Parcel
@Parcel
class CommitUser {
@Json(name = "id")
var id: String? = null
@Json(name = "name")
var name: String? = null
@Json(name = "username")
var username: String? = null
@Json(name = "state")
var state: String? = null
@Json(name = "avatar_url")
var avatarUrl: String? = null
@Json(name = "web_url")
var webUrl: String? = null
override fun equals(o: Any?): Boolean {
if (o !is CommitUser) {
return false
}
val commit = o as CommitUser?
return ObjectUtil.equals(id, commit!!.id)
}
override fun hashCode(): Int {
return ObjectUtil.hash(id!!)
}
}
package com.commit451.gitlab.model.api;
import com.commit451.gitlab.util.ObjectUtil;
import com.squareup.moshi.Json;
import org.parceler.Parcel;
import java.util.ArrayList;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Set;
@Parcel
public class Contributor {
@Json(name = "name")
String name;
@Json(name = "email")
String email;
@Json(name = "commits")
int commits;
@Json(name = "additions")
int additions;
@Json(name = "deletions")
int deletions;
public Contributor() {}
public String getName() {
return name;
}
public String getEmail() {
return email;
}
public int getCommits() {
return commits;
}
public int getAdditions() {
return additions;
}
public int getDeletions() {
return deletions;
}
@Override
public boolean equals(Object o) {
if (!(o instanceof Contributor)) {
return false;
}
Contributor contributor = (Contributor) o;
return ObjectUtil.INSTANCE.equals(name, contributor.name) && ObjectUtil.INSTANCE.equals(email, contributor.email);
}
@Override
public int hashCode() {
return ObjectUtil.INSTANCE.hash(name, email);
}
public static List<Contributor> groupContributors(List<Contributor> contributors) {
Set<ContributorEntry> contributorEntries = new LinkedHashSet<>();
for (Contributor contributor : contributors) {
ContributorEntry contrib = null;
for (ContributorEntry entry : contributorEntries) {
if ((contributor.name != null && contributor.name.equals(entry.mContributor.name))
|| (contributor.email != null && contributor.email.equals(entry.mContributor.email))) {
while (entry.mReplacement != null) {
entry = entry.mReplacement;
}
if (contrib == entry) {
continue;
}
if (contrib == null) {
contrib = entry;
} else {
contrib.mContributor.commits += entry.mContributor.commits;
contrib.mContributor.additions += entry.mContributor.additions;
contrib.mContributor.deletions += entry.mContributor.deletions;
entry.mReplacement = contrib;
}
}
}
if (contrib == null) {
contrib = new ContributorEntry();
contrib.mContributor = contributor;
contributorEntries.add(contrib);
} else {
contrib.mContributor.commits += contributor.commits;
contrib.mContributor.additions += contributor.additions;
contrib.mContributor.deletions += contributor.deletions;
}
}
contributors = new ArrayList<>();
for (ContributorEntry entry : contributorEntries) {
if (entry.mReplacement == null) {
contributors.add(entry.mContributor);
}
}
return contributors;
}
private static class ContributorEntry {
Contributor mContributor;
ContributorEntry mReplacement;
}
}
package com.commit451.gitlab.model.api
import com.squareup.moshi.Json
import org.parceler.Parcel
@Parcel
class Contributor {
@Json(name = "name")
var name: String? = null
@Json(name = "email")
var email: String? = null
@Json(name = "commits")
var commits: Int = 0
@Json(name = "additions")
var additions: Int = 0
@Json(name = "deletions")
var deletions: Int = 0
}
package com.commit451.gitlab.model.api;
import com.squareup.moshi.Json;
import org.parceler.Parcel;
@Parcel
public class Diff {
@Json(name = "old_path")
String oldPath;
@Json(name = "new_path")
String newPath;
@Json(name = "a_mode")
int aMode;
@Json(name = "b_mode")
int bMode;
@Json(name = "diff")
String diff;
@Json(name = "new_file")
boolean newFile;
@Json(name = "renamed_file")
boolean renamedFile;
@Json(name = "deleted_file")
boolean deletedFile;
public Diff() {}
public String getOldPath() {
return oldPath;
}
public String getNewPath() {
return newPath;
}
public int getAMode() {
return aMode;
}
public int getBMode() {
return bMode;
}
public String getDiff() {
return diff;
}
public boolean isNewFile() {
return newFile;
}
public boolean isRenamedFile() {
return renamedFile;
}
public boolean isDeletedFile() {
return deletedFile;
}
public String getFileName() {
if (newPath.contains("/")) {
String[] paths = newPath.split("/");
return paths[paths.length-1];
} else {
return newPath;
}
}
}
package com.commit451.gitlab.model.api
import com.squareup.moshi.Json
import org.parceler.Parcel
@Parcel
class Diff {
@Json(name = "old_path")
var oldPath: String? = null
@Json(name = "new_path")
var newPath: String? = null
@Json(name = "a_mode")
var aMode: Int = 0
@Json(name = "b_mode")
var bMode: Int = 0
@Json(name = "diff")
var diff: String? = null
@Json(name = "new_file")
var isNewFile: Boolean = false
@Json(name = "renamed_file")
var isRenamedFile: Boolean = false
@Json(name = "deleted_file")
var isDeletedFile: Boolean = false
}
package com.commit451.gitlab.model.api;
import com.squareup.moshi.Json;
import org.parceler.Parcel;
@Parcel
public class Email {
@Json(name = "id")
long id;
@Json(name = "email")
String email;
public Email() {}
public long getId() {
return id;
}
public String getEmail() {
return email;
}
@Override
public boolean equals(Object o) {
if (!(o instanceof Email)) {
return false;
}
Email email = (Email) o;
return id == email.id;
}
@Override
public int hashCode() {
return (int) (id ^ (id >>> 32));
}
}
package com.commit451.gitlab.model.api
import com.squareup.moshi.Json
import org.parceler.Parcel
@Parcel
class Email {
@Json(name = "id")
var id: Long = 0
@Json(name = "email")
var email: String? = null
}
package com.commit451.gitlab.model.api;
import com.squareup.moshi.Json;
import org.parceler.Parcel;
/**
* Response when a file is uploaded
*/
@Parcel
public class FileUploadResponse {
@Json(name = "alt")
String alt;
@Json(name = "url")
String url;
@Json(name = "is_image")
boolean isImage;
@Json(name = "markdown")
String markdown;
protected FileUploadResponse() {
//for json
}
public String getAlt() {
return alt;
}
public String getUrl() {
return url;
}
public boolean isImage() {
return isImage;
}
public String getMarkdown() {
return markdown;
}
}
package com.commit451.gitlab.model.api;
import com.squareup.moshi.Json;
import org.parceler.Parcel;
@Parcel
public class ForkedFromProject {
@Json(name = "id")
long id;
@Json(name = "name")
String name;
@Json(name = "name_with_namespace")
String nameWithNamespace;
@Json(name = "path")
String path;
@Json(name = "path_with_namespace")
String pathWithNamespace;
public ForkedFromProject() {}
public long getId() {
return id;
}
public String getName() {
return name;
}
public String getNameWithNamespace() {
return nameWithNamespace;
}
public String getPath() {
return path;
}
public String getPathWithNamespace() {
return pathWithNamespace;
}
@Override
public boolean equals(Object o) {
if (!(o instanceof ForkedFromProject)) {
return false;
}
ForkedFromProject that = (ForkedFromProject) o;
return id == that.id;
}
@Override
public int hashCode() {
return (int) (id ^ (id >>> 32));
}
}
package com.commit451.gitlab.model.api
import com.squareup.moshi.Json
import org.parceler.Parcel
@Parcel
class ForkedFromProject {
@Json(name = "id")
var id: Long = 0
@Json(name = "name")
var name: String? = null
@Json(name = "name_with_namespace")
var nameWithNamespace: String? = null
@Json(name = "path")
var path: String? = null
@Json(name = "path_with_namespace")
var pathWithNamespace: String? = null
}
package com.commit451.gitlab.model.api;
import android.net.Uri;
import android.support.annotation.Nullable;
import com.squareup.moshi.Json;
import org.parceler.Parcel;
@Parcel
public class Group {
@Json(name = "id")
long id;
@Json(name = "name")
String name;
@Json(name = "path")
String path;
@Json(name = "description")
String description;
@Json(name = "avatar_url")
String avatarUrl;
@Json(name = "web_url")
String webUrl;
public Group() {}
public long getId() {
return id;
}
public String getName() {
return name;
}
public String getPath() {
return path;
}
public String getDescription() {
return description;
}
public String getAvatarUrl() {
return avatarUrl;
}
public String getWebUrl() {
return webUrl;
}
@Nullable
public Uri getFeedUrl() {
if (webUrl == null) {
return null;
}
return Uri.parse(webUrl + ".atom");
}
@Override
public boolean equals(Object o) {
if (!(o instanceof Group)) {
return false;
}
Group group = (Group) o;
return id == group.id;
}
@Override
public int hashCode() {
return (int) (id ^ (id >>> 32));
}
}
package com.commit451.gitlab.model.api
import com.squareup.moshi.Json
import org.parceler.Parcel
@Parcel
open class Group {
@Json(name = "id")
var id: Long = 0
@Json(name = "name")
var name: String? = null
@Json(name = "path")
var path: String? = null
@Json(name = "description")
var description: String? = null
@Json(name = "avatar_url")
var avatarUrl: String? = null
@Json(name = "web_url")
lateinit var webUrl: String
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment