/******************************************************************************* * Copyright (c) 2012-2017 Codenvy, S.A. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Codenvy, S.A. - initial API and implementation *******************************************************************************/ package org.eclipse.che.api.git.params; import org.eclipse.che.api.git.shared.ResetRequest; import org.eclipse.che.api.git.shared.ResetRequest.ResetType; import java.util.ArrayList; import java.util.List; /** * Arguments holder for {@link org.eclipse.che.api.git.GitConnection#reset(ResetParams)}. * * @author Igor Vinokur */ public class ResetParams { private String commit; private ResetType type; private List<String> filePattern; private ResetParams() { } /** * Create new {@link ResetParams} instance. * * @param commit * hash of commit to which current head should be reset * @param type * type of reset */ public static ResetParams create(String commit, ResetType type) { return new ResetParams().withCommit(commit).withType(type); } /** @see ResetRequest#getCommit() */ public String getCommit() { return commit; } /** @see ResetRequest#withCommit(String) */ public ResetParams withCommit(String commit) { this.commit = commit; return this; } /** @see ResetRequest#getType() */ public ResetType getType() { return type; } public ResetParams withType(ResetType type) { this.type = type; return this; } /** @see ResetRequest#getFilePattern() */ public List<String> getFilePattern() { return filePattern == null ? new ArrayList<>() : filePattern; } /** @see ResetRequest#withFilePattern(List) */ public ResetParams withFilePattern(List<String> filePattern) { this.filePattern = filePattern; return this; } }