Skip to content

Commit 26a82a6

Browse files
committed
первая итерация nullsafe
1 parent bc9178a commit 26a82a6

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+258
-274
lines changed

build.gradle.kts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,8 @@ dependencies {
6868
// быстрый поиск классов
6969
implementation("io.github.classgraph", "classgraph", "4.8.179")
7070

71+
implementation("org.jspecify", "jspecify", "1.0.0")
72+
7173
// тестирование
7274
testImplementation("org.junit.jupiter", "junit-jupiter-api", "5.11.4")
7375
testImplementation("org.junit.jupiter", "junit-jupiter-engine", "5.11.4")

src/main/java/com/github/_1c_syntax/bsl/mdclasses/helpers/package-info.java

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,7 @@
2222
/**
2323
* Набор различных помощников
2424
*/
25-
@ParametersAreNonnullByDefault
26-
@ReturnValuesAreNonnullByDefault
25+
@NullMarked
2726
package com.github._1c_syntax.bsl.mdclasses.helpers;
2827

29-
import edu.umd.cs.findbugs.annotations.ReturnValuesAreNonnullByDefault;
30-
31-
import javax.annotation.ParametersAreNonnullByDefault;
28+
import org.jspecify.annotations.NullMarked;

src/main/java/com/github/_1c_syntax/bsl/mdclasses/package-info.java

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,11 @@
2020
* License along with MDClasses.
2121
*/
2222
/**
23-
* Данных пакет предназначен для данных контейнеров метаданных (Конфигурация, Расширение,
24-
* Внешние обработки и отчеты), и предоставления точек входа в библиотеку
25-
*/
26-
27-
@ParametersAreNonnullByDefault
28-
@ReturnValuesAreNonnullByDefault
29-
package com.github._1c_syntax.bsl.mdclasses;
30-
31-
import edu.umd.cs.findbugs.annotations.ReturnValuesAreNonnullByDefault;
32-
33-
import javax.annotation.ParametersAreNonnullByDefault;
23+
* Данных пакет предназначен для данных контейнеров метаданных (Конфигурация, Расширение,
24+
* Внешние обработки и отчеты), и предоставления точек входа в библиотеку
25+
*/
26+
27+
@NullMarked
28+
package com.github._1c_syntax.bsl.mdclasses;
29+
30+
import org.jspecify.annotations.NullMarked;

src/main/java/com/github/_1c_syntax/bsl/mdo/children/package-info.java

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,7 @@
2323
* Пакет содержит дочерние объекты метаданных, т.е. те, что могут существовать только в подчинении основным.
2424
* Примеры: Реквизиты, операции сервисов, формы и т.д.
2525
*/
26-
@ParametersAreNonnullByDefault
27-
@ReturnValuesAreNonnullByDefault
26+
@NullMarked
2827
package com.github._1c_syntax.bsl.mdo.children;
2928

30-
import edu.umd.cs.findbugs.annotations.ReturnValuesAreNonnullByDefault;
31-
32-
import javax.annotation.ParametersAreNonnullByDefault;
29+
import org.jspecify.annotations.NullMarked;

src/main/java/com/github/_1c_syntax/bsl/mdo/package-info.java

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,7 @@
2222
/**
2323
* В пакете находятся самостоятельные объекты метаданных и интерфейсы-расширения их дополнительными возможностями
2424
*/
25-
@ParametersAreNonnullByDefault
26-
@ReturnValuesAreNonnullByDefault
25+
@NullMarked
2726
package com.github._1c_syntax.bsl.mdo;
2827

29-
import edu.umd.cs.findbugs.annotations.ReturnValuesAreNonnullByDefault;
30-
31-
import javax.annotation.ParametersAreNonnullByDefault;
28+
import org.jspecify.annotations.NullMarked;

src/main/java/com/github/_1c_syntax/bsl/mdo/storage/DataCompositionSchema.java

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@
2424
import com.github._1c_syntax.bsl.mdo.support.DataSetType;
2525
import lombok.Builder;
2626
import lombok.Getter;
27-
import lombok.NonNull;
2827
import lombok.Singular;
2928
import lombok.Value;
3029

@@ -56,7 +55,7 @@ public class DataCompositionSchema implements TemplateData {
5655
@Getter
5756
Path dataPath;
5857

59-
public DataCompositionSchema(@NonNull List<DataSet> dataSetsTree, @NonNull Path path) {
58+
public DataCompositionSchema(List<DataSet> dataSetsTree, Path path) {
6059
dataSets = dataSetsTree;
6160
dataPath = path;
6261
}
@@ -89,18 +88,18 @@ private static void fillPlainDataSetByList(List<DataSet> result, List<DataSet> i
8988
* @param fields Поля набора данных
9089
*/
9190
@Builder
92-
public record DataSet(@NonNull String name,
93-
@NonNull DataSetType type,
94-
@NonNull String dataSource,
95-
@NonNull @Singular List<DataSet> items,
96-
@NonNull QuerySource querySource,
97-
@NonNull @Singular List<DataSetField> fields) {
91+
public record DataSet(String name,
92+
DataSetType type,
93+
String dataSource,
94+
@Singular List<DataSet> items,
95+
QuerySource querySource,
96+
@Singular List<DataSetField> fields) {
9897
}
9998

10099
/**
101100
* @param dataPath Путь к данным поля
102101
* @param name Имя поля
103102
*/
104-
public record DataSetField(@NonNull String dataPath, @NonNull String name) {
103+
public record DataSetField(String dataPath, String name) {
105104
}
106105
}

src/main/java/com/github/_1c_syntax/bsl/mdo/storage/QuerySource.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,16 +21,14 @@
2121
*/
2222
package com.github._1c_syntax.bsl.mdo.storage;
2323

24-
import lombok.NonNull;
25-
2624
/**
2725
* Модель хранения информации о запросе СКД
2826
*
2927
* @param line Номер строки позиции запроса в исходном файле
3028
* @param column Номер первого символа позиции запроса в исходном файле
3129
* @param textQuery Текст запроса
3230
*/
33-
public record QuerySource(int line, int column, @NonNull String textQuery) {
31+
public record QuerySource(int line, int column, String textQuery) {
3432

3533
/**
3634
* Пустой запрос

src/main/java/com/github/_1c_syntax/bsl/mdo/storage/RoleData.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@
2525
import com.github._1c_syntax.bsl.types.MdoReference;
2626
import com.github._1c_syntax.utils.GenericInterner;
2727
import lombok.Builder;
28-
import lombok.NonNull;
2928
import lombok.Singular;
3029

3130
import java.util.List;
@@ -39,7 +38,7 @@
3938
*/
4039
@Builder
4140
public record RoleData(boolean setForNewObjects, boolean setForAttributesByDefault,
42-
boolean independentRightsOfChildObjects, @NonNull @Singular List<ObjectRight> objectRights) {
41+
boolean independentRightsOfChildObjects, @Singular List<ObjectRight> objectRights) {
4342

4443
public static final RoleData EMPTY = RoleData.builder().build();
4544
public static final GenericInterner<Right> RIGHT_INTERNER = new GenericInterner<>();
@@ -49,14 +48,14 @@ public record RoleData(boolean setForNewObjects, boolean setForAttributesByDefau
4948
* @param rights Набор самих прав
5049
*/
5150
@Builder
52-
public record ObjectRight(@NonNull MdoReference name, @NonNull @Singular List<Right> rights) {
51+
public record ObjectRight(MdoReference name, @Singular List<Right> rights) {
5352
}
5453

5554
/**
5655
* @param name Право
5756
* @param value Признак установленности права
5857
*/
5958
@Builder
60-
public record Right(@NonNull RoleRight name, boolean value) {
59+
public record Right(RoleRight name, boolean value) {
6160
}
6261
}

src/main/java/com/github/_1c_syntax/bsl/mdo/storage/TemplateData.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@
2121
*/
2222
package com.github._1c_syntax.bsl.mdo.storage;
2323

24-
import javax.annotation.Nullable;
24+
import org.jspecify.annotations.Nullable;
25+
2526
import java.nio.file.Path;
2627

2728
/**

src/main/java/com/github/_1c_syntax/bsl/mdo/storage/XdtoPackageData.java

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
package com.github._1c_syntax.bsl.mdo.storage;
2323

2424
import lombok.Builder;
25-
import lombok.NonNull;
2625
import lombok.Singular;
2726

2827
import java.util.Collections;
@@ -38,11 +37,11 @@
3837
* @param properties Список глобальных атрибутов
3938
*/
4039
@Builder
41-
public record XdtoPackageData(@NonNull String targetNamespace,
42-
@NonNull @Singular("oneImport") List<String> imports,
43-
@NonNull @Singular List<ValueType> valueTypes,
44-
@NonNull @Singular List<ObjectType> objectTypes,
45-
@NonNull @Singular List<Property> properties) {
40+
public record XdtoPackageData(String targetNamespace,
41+
@Singular("oneImport") List<String> imports,
42+
@Singular List<ValueType> valueTypes,
43+
@Singular List<ObjectType> objectTypes,
44+
@Singular List<Property> properties) {
4645

4746
public static final XdtoPackageData EMPTY = new XdtoPackageData(
4847
"",
@@ -59,10 +58,10 @@ public record XdtoPackageData(@NonNull String targetNamespace,
5958
* @param enumerations Значения элементов перечисления
6059
*/
6160
@Builder
62-
public record ValueType(@NonNull String name,
63-
@NonNull String base,
64-
@NonNull String variety,
65-
@NonNull @Singular List<String> enumerations) {
61+
public record ValueType(String name,
62+
String base,
63+
String variety,
64+
@Singular List<String> enumerations) {
6665
}
6766

6867
/**
@@ -71,7 +70,7 @@ public record ValueType(@NonNull String name,
7170
* @param properties Список атрибутов объекта
7271
*/
7372
@Builder
74-
public record ObjectType(@NonNull String name, @NonNull String base, @NonNull @Singular List<Property> properties) {
73+
public record ObjectType(String name, String base, @Singular List<Property> properties) {
7574
}
7675

7776
/**
@@ -84,12 +83,12 @@ public record ObjectType(@NonNull String name, @NonNull String base, @NonNull @S
8483
* @param typeDef Свойства поля
8584
*/
8685
@Builder
87-
public record Property(@NonNull String name,
88-
@NonNull String type,
86+
public record Property(String name,
87+
String type,
8988
int lowerBound,
9089
int upperBound,
9190
boolean nillable,
92-
@NonNull String form,
93-
@NonNull @Singular("property") List<Property> typeDef) {
91+
String form,
92+
@Singular("property") List<Property> typeDef) {
9493
}
9594
}

0 commit comments

Comments
 (0)