1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
|
/*
* SonarQube
* Copyright (C) 2009-2025 SonarSource SA
* mailto:info AT sonarsource DOT com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 3 of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program; if not, write to the Free Software Foundation,
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
package org.sonar.db.audit.model;
import java.util.Objects;
import javax.annotation.CheckForNull;
import javax.annotation.Nullable;
import org.sonar.db.component.ComponentDto;
import static java.util.Objects.requireNonNull;
public class ComponentNewValue extends NewValue {
/**
* @deprecated The uuids in the audit logs are not product requirement anymore and will be removed in 11.x
*/
@Deprecated(since = "10.2")
private final String componentUuid;
private final String componentKey;
private final String componentName;
private final String description;
private final Boolean isPrivate;
private final String qualifier;
private Boolean isEnabled;
private String path;
public ComponentNewValue(ComponentDto component) {
this(component.uuid(), component.name(), component.getKey(), component.isPrivate(), component.description(), component.qualifier());
}
public ComponentNewValue(String componentUuid, String componentName, String componentKey, String qualifier) {
this(componentUuid, componentName, componentKey, null, null, qualifier);
}
public ComponentNewValue(String componentUuid, String componentName, String componentKey, boolean isPrivate, String qualifier) {
this(componentUuid, isPrivate, componentName, componentKey, null, qualifier);
}
public ComponentNewValue(String uuid, String name, String key, boolean enabled, String path, String qualifier) {
this(uuid, name, key, null, null, qualifier);
this.isEnabled = enabled;
this.path = path;
}
public ComponentNewValue(String uuid, @Nullable Boolean isPrivate, String name, String key, @Nullable String description, String qualifier) {
this(uuid, name, key, isPrivate, description, qualifier);
}
ComponentNewValue(String uuid, String name, String key, @Nullable Boolean isPrivate, @Nullable String description, String qualifier) {
this.componentUuid = requireNonNull(uuid);
this.componentName = name;
this.componentKey = key;
this.isPrivate = isPrivate;
this.description = description;
this.qualifier = qualifier;
}
/**
* @deprecated The uuids in the audit logs are not product requirement anymore and will be removed in 11.x
*/
@Deprecated(since = "10.2")
public String getComponentUuid() {
return componentUuid;
}
public String getComponentName() {
return componentName;
}
@CheckForNull
public String getDescription() {
return description;
}
public String getComponentKey() {
return componentKey;
}
@CheckForNull
public Boolean isPrivate() {
return isPrivate;
}
public String getQualifier() {
return qualifier;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder("{");
addField(sb, "\"componentUuid\": ", this.componentUuid, true);
addField(sb, "\"componentKey\": ", this.componentKey, true);
addField(sb, "\"componentName\": ", this.componentName, true);
addField(sb, "\"qualifier\": ", getQualifier(qualifier), true);
addField(sb, "\"description\": ", this.description, true);
addField(sb, "\"path\": ", this.path, true);
addField(sb, "\"isPrivate\": ", Objects.toString(this.isPrivate, ""), false);
addField(sb, "\"isEnabled\": ", Objects.toString(this.isEnabled, ""), false);
endString(sb);
return sb.toString();
}
}
|