Skip to content

Commit a602bb8

Browse files
authored
Remove Jackson usage in Attestation, Models Repository, Quantum Jobs, and Video Analyzer Edge (#42537)
Remove Jackson usage in Attestation, Models Repository, Quantum Jobs, and Video Analyzer Edge
1 parent bb8396d commit a602bb8

File tree

162 files changed

+10416
-2307
lines changed

Some content is hidden

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

162 files changed

+10416
-2307
lines changed

sdk/attestation/azure-security-attestation/pom.xml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@
3737
<javaModulesSurefireArgLine>
3838
--add-opens com.azure.security.attestation/com.azure.security.attestation=ALL-UNNAMED
3939
--add-opens com.azure.security.attestation/com.azure.security.attestation.models=ALL-UNNAMED
40-
--add-opens com.azure.security.attestation/com.azure.security.attestation.models=com.fasterxml.jackson.databind
4140
</javaModulesSurefireArgLine>
4241
<spotless.skip>false</spotless.skip>
4342
</properties>

sdk/attestation/azure-security-attestation/src/test/java/com/azure/security/attestation/models/TestObject.java

Lines changed: 73 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,28 @@
33

44
package com.azure.security.attestation.models;
55

6-
import com.fasterxml.jackson.annotation.JsonProperty;
6+
import com.azure.json.JsonReader;
7+
import com.azure.json.JsonSerializable;
8+
import com.azure.json.JsonToken;
9+
import com.azure.json.JsonWriter;
710

11+
import java.io.IOException;
812
import java.time.Instant;
913
import java.time.OffsetDateTime;
1014
import java.time.ZoneOffset;
15+
import java.util.List;
1116

12-
final class TestObject {
13-
@JsonProperty(value = "alg")
17+
public final class TestObject implements JsonSerializable<TestObject> {
1418
private String alg;
19+
private int integer;
20+
private long expiration;
21+
private long issuedOn;
22+
private long notBefore;
23+
private int[] integerArray;
24+
String issuer;
25+
26+
TestObject() {
27+
}
1528

1629
public TestObject setAlg(String v) {
1730
alg = v;
@@ -22,9 +35,6 @@ public String getAlg() {
2235
return alg;
2336
}
2437

25-
@JsonProperty(value = "int")
26-
private int integer;
27-
2838
public TestObject setInteger(int v) {
2939
integer = v;
3040
return this;
@@ -34,9 +44,6 @@ public int getInteger() {
3444
return integer;
3545
}
3646

37-
@JsonProperty(value = "exp")
38-
private long expiration;
39-
4047
public TestObject setExpiresOn(OffsetDateTime expirationTime) {
4148
this.expiration = expirationTime.toEpochSecond();
4249
return this;
@@ -46,9 +53,6 @@ public OffsetDateTime getExpiresOn() {
4653
return OffsetDateTime.ofInstant(Instant.EPOCH.plusSeconds(expiration), ZoneOffset.UTC);
4754
}
4855

49-
@JsonProperty(value = "iat")
50-
private long issuedOn;
51-
5256
public TestObject setIssuedOn(OffsetDateTime issuedOn) {
5357
this.issuedOn = issuedOn.toEpochSecond();
5458
return this;
@@ -58,9 +62,6 @@ public OffsetDateTime getIssuedOn() {
5862
return OffsetDateTime.ofInstant(Instant.EPOCH.plusSeconds(issuedOn), ZoneOffset.UTC);
5963
}
6064

61-
@JsonProperty(value = "nbf")
62-
private long notBefore;
63-
6465
public TestObject setNotBefore(OffsetDateTime notBefore) {
6566
this.notBefore = notBefore.toEpochSecond();
6667
return this;
@@ -70,9 +71,6 @@ public OffsetDateTime getNotBefore() {
7071
return OffsetDateTime.ofInstant(Instant.EPOCH.plusSeconds(notBefore), ZoneOffset.UTC);
7172
}
7273

73-
@JsonProperty(value = "intArray")
74-
private int[] integerArray;
75-
7674
public TestObject setIntegerArray(int[] v) {
7775
integerArray = v.clone();
7876
return this;
@@ -82,9 +80,6 @@ public int[] getIntegerArray() {
8280
return integerArray;
8381
}
8482

85-
@JsonProperty(value = "iss")
86-
String issuer;
87-
8883
public TestObject setIssuer(String iss) {
8984
issuer = iss;
9085
return this;
@@ -94,7 +89,63 @@ public String getIssuer() {
9489
return issuer;
9590
}
9691

97-
TestObject() {
92+
@Override
93+
public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
94+
jsonWriter.writeStartObject()
95+
.writeStringField("alg", alg)
96+
.writeIntField("int", integer)
97+
.writeLongField("exp", expiration)
98+
.writeLongField("iat", issuedOn)
99+
.writeLongField("nbf", notBefore);
100+
101+
if (integerArray != null) {
102+
jsonWriter.writeStartArray("intArray");
103+
104+
for (int value : integerArray) {
105+
jsonWriter.writeInt(value);
106+
}
107+
108+
jsonWriter.writeEndArray();
109+
}
110+
111+
return jsonWriter.writeStringField("iss", issuer).writeEndObject();
112+
}
98113

114+
public static TestObject fromJson(JsonReader jsonReader) throws IOException {
115+
return jsonReader.readObject(reader -> {
116+
TestObject testObject = new TestObject();
117+
118+
while (reader.nextToken() != JsonToken.END_OBJECT) {
119+
String fieldName = reader.getFieldName();
120+
reader.nextToken();
121+
122+
if ("alg".equals(fieldName)) {
123+
testObject.alg = reader.getString();
124+
} else if ("int".equals(fieldName)) {
125+
testObject.integer = reader.getInt();
126+
} else if ("exp".equals(fieldName)) {
127+
testObject.expiration = reader.getLong();
128+
} else if ("iat".equals(fieldName)) {
129+
testObject.issuedOn = reader.getLong();
130+
} else if ("nbf".equals(fieldName)) {
131+
testObject.notBefore = reader.getLong();
132+
} else if ("intArray".equals(fieldName)) {
133+
List<Integer> intList = reader.readArray(JsonReader::getInt);
134+
if (intList != null) {
135+
testObject.integerArray = new int[intList.size()];
136+
for (int i = 0; i < testObject.integerArray.length; i++) {
137+
testObject.integerArray[i] = intList.get(i);
138+
}
139+
140+
}
141+
} else if ("iss".equals(fieldName)) {
142+
testObject.issuer = reader.getString();
143+
} else {
144+
reader.skipChildren();
145+
}
146+
}
147+
148+
return testObject;
149+
});
99150
}
100151
}

sdk/modelsrepository/azure-iot-modelsrepository/pom.xml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,11 @@
4343
</properties>
4444

4545
<dependencies>
46+
<dependency>
47+
<groupId>com.azure</groupId>
48+
<artifactId>azure-json</artifactId>
49+
<version>1.3.0</version> <!-- {x-version-update;com.azure:azure-json;dependency} -->
50+
</dependency>
4651
<dependency>
4752
<groupId>com.azure</groupId>
4853
<artifactId>azure-core</artifactId>

sdk/modelsrepository/azure-iot-modelsrepository/src/main/java/com/azure/iot/modelsrepository/implementation/HttpModelFetcher.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@
99
import com.azure.iot.modelsrepository.DtmiConventions;
1010
import com.azure.iot.modelsrepository.implementation.models.FetchMetadataResult;
1111
import com.azure.iot.modelsrepository.implementation.models.FetchModelResult;
12-
import com.fasterxml.jackson.core.JsonProcessingException;
1312
import reactor.core.publisher.Mono;
1413

14+
import java.io.IOException;
1515
import java.net.MalformedURLException;
1616
import java.net.URI;
1717
import java.net.URISyntaxException;
@@ -51,7 +51,7 @@ public Mono<FetchModelResult> fetchModelAsync(String dtmi, URI repositoryUri, bo
5151

5252
return evaluatePath(tryContentPath, context)
5353
.onErrorResume(error -> {
54-
if (work.size() != 0) {
54+
if (!work.isEmpty()) {
5555
return evaluatePath(work.poll(), context);
5656
} else {
5757
logger.error(String.format(StatusStrings.ERROR_FETCHING_MODEL_CONTENT, tryContentPath));
@@ -78,7 +78,7 @@ public Mono<FetchMetadataResult> fetchMetadataAsync(URI repositoryUri, Context c
7878
.map(s -> {
7979
try {
8080
return new FetchMetadataResult().setPath(tryContentPath).setDefinition(s);
81-
} catch (JsonProcessingException e) {
81+
} catch (IOException e) {
8282
logger.error(String.format(StatusStrings.ERROR_FETCHING_METADATA_CONTENT, tryContentPath));
8383
return null;
8484
}

0 commit comments

Comments
 (0)