All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.spotify.github.v3.repos.requests.RepositoryUpdate Maven / Gradle / Ivy

The newest version!
/*-
 * -\-\-
 * github-api
 * --
 * Copyright (C) 2016 - 2020 Spotify AB
 * --
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 * -/-/-
 */

package com.spotify.github.v3.repos.requests;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.spotify.github.GithubStyle;
import java.util.Optional;
import org.immutables.value.Value;

@Value.Immutable
@GithubStyle
@JsonSerialize(as = ImmutableRepositoryUpdate.class)
@JsonDeserialize(as = ImmutableRepositoryUpdate.class)
@JsonInclude(JsonInclude.Include.NON_EMPTY)
public interface RepositoryUpdate {

  /** Description */
  Optional description();

  /** Allow auto merges */
  Optional allowAutoMerge();

  /**
   * Either true to allow private forks, or false to prevent private forks.
   *
   * 

Default: false */ Optional allowForking(); /** Allow squash merges */ Optional allowSquashMerge(); /** Allow merge commits */ Optional allowMergeCommit(); /** Allow rebase merges */ Optional allowRebaseMerge(); /** * Either true to always allow a pull request head branch that is behind its base branch to be * updated even if it is not required to be up to date before merging, or false otherwise. * *

Default: false */ Optional allowUpdateBranch(); /** Updates the default branch for this repository. */ Optional defaultBranch(); /** * Either true to allow automatically deleting head branches when pull requests are merged, or * false to prevent automatic deletion. * *

Default: false */ Optional deleteBranchOnMerge(); /** Homepage URL */ Optional homepage(); /** Does it have downloads */ Optional hasDownloads(); /** Does it have issues */ Optional hasIssues(); /** Does it have wiki */ Optional hasWiki(); /** Does it have pages */ Optional hasPages(); /** Does it have projects */ Optional hasProjects(); /** * Whether to archive this repository. false will unarchive a previously archived repository. * *

Default: false */ @JsonProperty("archived") Optional isArchived(); /** Is it private */ @JsonProperty("private") Optional isPrivate(); /** * Either true to make this repo available as a template repository or false to prevent it. * Default: false */ Optional isTemplate(); /** * The default value for a squash merge commit message: * *

PR_BODY - default to the pull request's body. COMMIT_MESSAGES - default to the branch's * commit messages. BLANK - default to a blank commit message. Can be one of: PR_BODY, * COMMIT_MESSAGES, BLANK */ Optional squashMergeCommitMessage(); /** * squash_merge_commit_title string The default value for a squash merge commit title: * *

PR_TITLE - default to the pull request's title. COMMIT_OR_PR_TITLE - default to the commit's * title (if only one commit) or the pull request's title (when more than one commit). Can be one * of: PR_TITLE, COMMIT_OR_PR_TITLE */ Optional squashMergeCommitTitle(); /** * The default value for a merge commit message. * *

PR_TITLE - default to the pull request's title. PR_BODY - default to the pull request's * body. BLANK - default to a blank commit message. */ Optional mergeCommitMessage(); /** * The default value for a merge commit title. * *

PR_TITLE - default to the pull request's title. MERGE_MESSAGE - default to the classic title * for a merge message (e.g., Merge pull request #123 from branch-name). Can be one of: PR_TITLE, * MERGE_MESSAGE */ Optional mergeCommitTitle(); /** * The id of the team that will be granted access to this repository. This is only valid when * creating a repository in an organization. Default: false */ Optional teamId(); /** The visibility of the repo. Can be one of `public`, `private`, `internal` */ Optional visibility(); /** * Either true to require contributors to sign off on web-based commits, or false to not require * contributors to sign off on web-based commits. * *

Default: false */ Optional webCommitSignoffRequired(); }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy