001 /*
002 * SonarQube, open source software quality management tool.
003 * Copyright (C) 2008-2014 SonarSource
004 * mailto:contact AT sonarsource DOT com
005 *
006 * SonarQube is free software; you can redistribute it and/or
007 * modify it under the terms of the GNU Lesser General Public
008 * License as published by the Free Software Foundation; either
009 * version 3 of the License, or (at your option) any later version.
010 *
011 * SonarQube is distributed in the hope that it will be useful,
012 * but WITHOUT ANY WARRANTY; without even the implied warranty of
013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
014 * Lesser General Public License for more details.
015 *
016 * You should have received a copy of the GNU Lesser General Public License
017 * along with this program; if not, write to the Free Software Foundation,
018 * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
019 */
020 package org.sonar.wsclient.issue.internal;
021
022 import org.sonar.wsclient.issue.BulkChange;
023
024 import javax.annotation.CheckForNull;
025 import javax.annotation.Nullable;
026
027 import java.util.ArrayList;
028 import java.util.List;
029
030 /**
031 * @since 3.7
032 */
033 public class DefaultBulkChange implements BulkChange {
034
035 private Integer totalIssuesChanged;
036 private Integer totalIssuesNotChanged;
037 private final List<String> issuesNotChangedKeys = new ArrayList<String>();
038
039 @Override
040 public List<String> issuesNotChangedKeys() {
041 return issuesNotChangedKeys;
042 }
043
044 @Override
045 @CheckForNull
046 public Integer totalIssuesChanged() {
047 return totalIssuesChanged;
048 }
049
050 @Override
051 @CheckForNull
052 public Integer totalIssuesNotChanged() {
053 return totalIssuesNotChanged;
054 }
055
056 DefaultBulkChange setTotalIssuesChanged(@Nullable Integer totalIssuesChanged) {
057 this.totalIssuesChanged = totalIssuesChanged;
058 return this;
059 }
060
061 DefaultBulkChange setTotalIssuesNotChanged(@Nullable Integer totalIssuesNotChanged) {
062 this.totalIssuesNotChanged = totalIssuesNotChanged;
063 return this;
064 }
065
066 DefaultBulkChange setIssuesNotChanged(List<String> issueKeys) {
067 issuesNotChangedKeys.addAll(issueKeys);
068 return this;
069 }
070
071 DefaultBulkChange addIssueNotchanged(String issueKey) {
072 issuesNotChangedKeys.add(issueKey);
073 return this;
074 }
075
076 }