@azure-tools/typespec-java 0.7.0 → 0.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/code-model-builder.d.ts +4 -2
- package/dist/src/code-model-builder.d.ts.map +1 -1
- package/dist/src/code-model-builder.js +105 -15
- package/dist/src/code-model-builder.js.map +1 -1
- package/dist/src/common/long-running-metadata.d.ts +9 -0
- package/dist/src/common/long-running-metadata.d.ts.map +1 -0
- package/dist/src/common/long-running-metadata.js +10 -0
- package/dist/src/common/long-running-metadata.js.map +1 -0
- package/dist/src/common/operation.d.ts +3 -0
- package/dist/src/common/operation.d.ts.map +1 -1
- package/dist/src/common/operation.js.map +1 -1
- package/dist/src/external-schemas.d.ts +4 -0
- package/dist/src/external-schemas.d.ts.map +1 -0
- package/dist/src/external-schemas.js +76 -0
- package/dist/src/external-schemas.js.map +1 -0
- package/dist/src/models.d.ts +1 -7
- package/dist/src/models.d.ts.map +1 -1
- package/dist/src/models.js +0 -8
- package/dist/src/models.js.map +1 -1
- package/dist/src/utils.d.ts +3 -1
- package/dist/src/utils.d.ts.map +1 -1
- package/dist/src/utils.js +45 -15
- package/dist/src/utils.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +7 -6
- package/target/azure-typespec-extension-jar-with-dependencies.jar +0 -0
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { ObjectSchema, Schemas, StringSchema } from "@autorest/codemodel";
|
|
2
|
+
export declare function createResponseErrorSchema(schemas: Schemas, stringSchema: StringSchema): ObjectSchema;
|
|
3
|
+
export declare function createPollResultSchema(schemas: Schemas, stringSchema: StringSchema): ObjectSchema;
|
|
4
|
+
//# sourceMappingURL=external-schemas.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"external-schemas.d.ts","sourceRoot":"","sources":["../../src/external-schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,YAAY,EAAY,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAOjG,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,GAAG,YAAY,CAgDpG;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,GAAG,YAAY,CAsCjG"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { ArraySchema, ObjectSchema, Property } from "@autorest/codemodel";
|
|
2
|
+
/*
|
|
3
|
+
* These schema need to reflect
|
|
4
|
+
* 1. wire schema via "serializedName"
|
|
5
|
+
* 2. client schema in Java via "name"
|
|
6
|
+
*/
|
|
7
|
+
export function createResponseErrorSchema(schemas, stringSchema) {
|
|
8
|
+
const responseErrorSchema = new ObjectSchema("Error", "Status details for long running operations", {
|
|
9
|
+
language: {
|
|
10
|
+
default: {
|
|
11
|
+
namespace: "Azure.Core.Foundations",
|
|
12
|
+
},
|
|
13
|
+
},
|
|
14
|
+
});
|
|
15
|
+
schemas.add(responseErrorSchema);
|
|
16
|
+
responseErrorSchema.addProperty(new Property("code", "the error code of this error.", stringSchema, {
|
|
17
|
+
serializedName: "code",
|
|
18
|
+
required: true,
|
|
19
|
+
nullable: false,
|
|
20
|
+
readOnly: true,
|
|
21
|
+
}));
|
|
22
|
+
responseErrorSchema.addProperty(new Property("message", "the error message of this error.", stringSchema, {
|
|
23
|
+
serializedName: "message",
|
|
24
|
+
required: true,
|
|
25
|
+
nullable: false,
|
|
26
|
+
readOnly: true,
|
|
27
|
+
}));
|
|
28
|
+
responseErrorSchema.addProperty(new Property("target", "the target of this error.", stringSchema, {
|
|
29
|
+
serializedName: "target",
|
|
30
|
+
required: false,
|
|
31
|
+
nullable: true,
|
|
32
|
+
readOnly: true,
|
|
33
|
+
}));
|
|
34
|
+
const errorDetailsSchema = new ArraySchema("errorDetails", "the array of errors.", responseErrorSchema);
|
|
35
|
+
responseErrorSchema.addProperty(new Property("errorDetails", "a list of details about specific errors that led to this reported error.", errorDetailsSchema, {
|
|
36
|
+
serializedName: "details",
|
|
37
|
+
required: false,
|
|
38
|
+
nullable: true,
|
|
39
|
+
readOnly: true,
|
|
40
|
+
}));
|
|
41
|
+
return responseErrorSchema;
|
|
42
|
+
}
|
|
43
|
+
export function createPollResultSchema(schemas, stringSchema) {
|
|
44
|
+
const pollResultSchema = new ObjectSchema("PollResult", "Status details for long running operations", {
|
|
45
|
+
language: {
|
|
46
|
+
default: {
|
|
47
|
+
namespace: "Azure.Core.Foundations",
|
|
48
|
+
},
|
|
49
|
+
java: {
|
|
50
|
+
namespace: "com.azure.core.experimental.models",
|
|
51
|
+
},
|
|
52
|
+
},
|
|
53
|
+
});
|
|
54
|
+
schemas.add(pollResultSchema);
|
|
55
|
+
pollResultSchema.addProperty(new Property("operationId", "The unique ID of the operation.", stringSchema, {
|
|
56
|
+
serializedName: "id",
|
|
57
|
+
required: true,
|
|
58
|
+
nullable: false,
|
|
59
|
+
readOnly: true,
|
|
60
|
+
}));
|
|
61
|
+
pollResultSchema.addProperty(new Property("status", "The status of the operation.", stringSchema, {
|
|
62
|
+
serializedName: "status",
|
|
63
|
+
required: true,
|
|
64
|
+
nullable: false,
|
|
65
|
+
readOnly: true,
|
|
66
|
+
}));
|
|
67
|
+
const responseErrorSchema = createResponseErrorSchema(schemas, stringSchema);
|
|
68
|
+
pollResultSchema.addProperty(new Property("error", 'Error object that describes the error when status is "Failed".', responseErrorSchema, {
|
|
69
|
+
serializedName: "error",
|
|
70
|
+
required: false,
|
|
71
|
+
nullable: true,
|
|
72
|
+
readOnly: true,
|
|
73
|
+
}));
|
|
74
|
+
return pollResultSchema;
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=external-schemas.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"external-schemas.js","sourceRoot":"","sources":["../../src/external-schemas.ts"],"names":[],"mappings":"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"}
|
package/dist/src/models.d.ts
CHANGED
|
@@ -1,10 +1,4 @@
|
|
|
1
|
-
import { Parameter
|
|
2
|
-
export declare class LongRunningMetadata {
|
|
3
|
-
longRunning: boolean;
|
|
4
|
-
pollResultType?: Schema;
|
|
5
|
-
finalResultType?: Schema;
|
|
6
|
-
constructor(longRunning: boolean, pollResultType?: Schema, finalResultType?: Schema);
|
|
7
|
-
}
|
|
1
|
+
import { Parameter } from "@autorest/codemodel";
|
|
8
2
|
export declare class ClientContext {
|
|
9
3
|
baseUri: string;
|
|
10
4
|
hostParameters: Parameter[];
|
package/dist/src/models.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/models.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/models.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,qBAAa,aAAa;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,SAAS,EAAE,CAAC;IAC5B,gBAAgB,EAAE,SAAS,EAAE,CAAC;gBAElB,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,EAAE,gBAAgB,EAAE,SAAS,EAAE;IAMvF,kBAAkB,CAAC,SAAS,EAAE,SAAS;CAKxC"}
|
package/dist/src/models.js
CHANGED
|
@@ -1,11 +1,3 @@
|
|
|
1
|
-
export class LongRunningMetadata {
|
|
2
|
-
constructor(longRunning, pollResultType, finalResultType) {
|
|
3
|
-
this.longRunning = false;
|
|
4
|
-
this.longRunning = longRunning;
|
|
5
|
-
this.pollResultType = pollResultType;
|
|
6
|
-
this.finalResultType = finalResultType;
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
1
|
export class ClientContext {
|
|
10
2
|
constructor(baseUri, hostParameters, globalParameters) {
|
|
11
3
|
this.baseUri = baseUri;
|
package/dist/src/models.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/models.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/models.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,aAAa;IAKxB,YAAY,OAAe,EAAE,cAA2B,EAAE,gBAA6B;QACrF,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC3C,CAAC;IAED,kBAAkB,CAAC,SAAoB;QACrC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;YAC9C,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SACvC;IACH,CAAC;CACF"}
|
package/dist/src/utils.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { EncodeData, Enum, IntrinsicScalarName, Model, ModelProperty, Operation, Program, Scalar, TemplatedTypeBase, Type, Union } from "@typespec/compiler";
|
|
2
2
|
import { HttpOperation } from "@typespec/http";
|
|
3
3
|
import { ApiVersions } from "@autorest/codemodel";
|
|
4
|
+
import { LroMetadata } from "@azure-tools/typespec-azure-core";
|
|
4
5
|
import { Client as CodeModelClient, ServiceVersion } from "./common/client.js";
|
|
5
6
|
import { CodeModel } from "./common/code-model.js";
|
|
6
7
|
import { EmitterOptions } from "./emitter.js";
|
|
@@ -30,7 +31,6 @@ export declare class ProcessingCache<In, Out> {
|
|
|
30
31
|
export declare function pushDistinct<T>(targetArray: Array<T>, ...items: Array<T>): Array<T>;
|
|
31
32
|
export declare function logWarning(program: Program, msg: string): void;
|
|
32
33
|
export declare function loadExamples(program: Program, options: EmitterOptions): Promise<Map<Operation, any>>;
|
|
33
|
-
export declare function resolveOperationId(program: Program, operation: Operation): string;
|
|
34
34
|
export declare function getNamespace(type: Model | Enum | Union | Operation): string | undefined;
|
|
35
35
|
export declare function getJavaNamespace(namespace: string | undefined): string | undefined;
|
|
36
36
|
export declare function modelContainsDerivedModel(model: Model): boolean;
|
|
@@ -42,6 +42,8 @@ export declare function pascalCase(name: string): string;
|
|
|
42
42
|
export declare function isPayloadProperty(program: Program, property: ModelProperty): boolean;
|
|
43
43
|
export declare function getClientApiVersions(client: CodeModelClient): ApiVersions | undefined;
|
|
44
44
|
export declare function getServiceVersion(client: CodeModelClient | CodeModel): ServiceVersion;
|
|
45
|
+
export declare function isLroMetadataSupported(operation: Operation, lroMetadata: LroMetadata): boolean;
|
|
46
|
+
export declare function isLroNewPollingStrategy(operation: Operation, lroMetadata: LroMetadata): boolean;
|
|
45
47
|
export declare function getDurationFormat(encode: EncodeData): DurationSchema["format"];
|
|
46
48
|
export declare function hasScalarAsBase(type: Scalar, scalarName: IntrinsicScalarName): boolean;
|
|
47
49
|
//# sourceMappingURL=utils.d.ts.map
|
package/dist/src/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,IAAI,EACJ,mBAAmB,EACnB,KAAK,EACL,aAAa,EAEb,SAAS,EACT,OAAO,EACP,MAAM,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
|
package/dist/src/utils.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { NoTarget,
|
|
1
|
+
import { NoTarget, SyntaxKind, ignoreDiagnostics, isTemplateDeclaration, isTemplateInstance, resolvePath, } from "@typespec/compiler";
|
|
2
2
|
import { getHeaderFieldName, getQueryParamName, getPathParamName, isStatusCode, getAllHttpServices, } from "@typespec/http";
|
|
3
|
+
import { resolveOperationId } from "@typespec/openapi";
|
|
3
4
|
import { ServiceVersion } from "./common/client.js";
|
|
4
5
|
import { getVersion } from "@typespec/versioning";
|
|
5
6
|
export const specialHeaderNames = new Set([
|
|
@@ -100,7 +101,7 @@ export async function loadExamples(program, options) {
|
|
|
100
101
|
if (operationIdExamplesMap.size > 0) {
|
|
101
102
|
const routes = service.operations;
|
|
102
103
|
routes.forEach((it) => {
|
|
103
|
-
const operationId =
|
|
104
|
+
const operationId = pascalCaseForOperationId(resolveOperationId(program, it.operation));
|
|
104
105
|
if (operationIdExamplesMap.has(operationId)) {
|
|
105
106
|
operationExamplesMap.set(it.operation, operationIdExamplesMap.get(operationId));
|
|
106
107
|
}
|
|
@@ -109,19 +110,11 @@ export async function loadExamples(program, options) {
|
|
|
109
110
|
}
|
|
110
111
|
return operationExamplesMap;
|
|
111
112
|
}
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
if (operation.interface) {
|
|
118
|
-
return `${operation.interface.name}_${operation.name}`;
|
|
119
|
-
}
|
|
120
|
-
const namespace = operation.namespace;
|
|
121
|
-
if (namespace === undefined || isGlobalNamespace(program, namespace) || isService(program, namespace)) {
|
|
122
|
-
return operation.name;
|
|
123
|
-
}
|
|
124
|
-
return `${namespace.name}_${operation.name}`;
|
|
113
|
+
function pascalCaseForOperationId(name) {
|
|
114
|
+
return name
|
|
115
|
+
.split("_")
|
|
116
|
+
.map((s) => pascalCase(s))
|
|
117
|
+
.join("_");
|
|
125
118
|
}
|
|
126
119
|
export function getNamespace(type) {
|
|
127
120
|
let namespaceRef = type.namespace;
|
|
@@ -212,6 +205,43 @@ export function getServiceVersion(client) {
|
|
|
212
205
|
}
|
|
213
206
|
return new ServiceVersion(name, description);
|
|
214
207
|
}
|
|
208
|
+
export function isLroMetadataSupported(operation, lroMetadata) {
|
|
209
|
+
const azureCoreLroSvs = [
|
|
210
|
+
"LongRunningResourceCreateOrReplace",
|
|
211
|
+
"LongRunningResourceCreateOrUpdate",
|
|
212
|
+
"LongRunningResourceDelete",
|
|
213
|
+
"LongRunningResourceAction",
|
|
214
|
+
];
|
|
215
|
+
let ret = false;
|
|
216
|
+
if (lroMetadata.statusMonitorStep &&
|
|
217
|
+
lroMetadata.statusMonitorStep.responseModel.name === "OperationStatus" &&
|
|
218
|
+
getNamespace(lroMetadata.statusMonitorStep.responseModel) === "Azure.Core.Foundations") {
|
|
219
|
+
if (operation.node.signature.kind === SyntaxKind.OperationSignatureReference) {
|
|
220
|
+
if (operation.node.signature.baseOperation.target.kind === SyntaxKind.MemberExpression) {
|
|
221
|
+
const sv = operation.node.signature.baseOperation.target.id.sv;
|
|
222
|
+
ret = azureCoreLroSvs.includes(sv);
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
return ret;
|
|
227
|
+
}
|
|
228
|
+
export function isLroNewPollingStrategy(operation, lroMetadata) {
|
|
229
|
+
// at present, it is same as isLroMetadataSupported, which checks if operation uses template from Azure.Core
|
|
230
|
+
// will change later when isLroMetadataSupported extends to other types of operations
|
|
231
|
+
return true;
|
|
232
|
+
// if (verb === "put" && !lroMetadata.finalStep) {
|
|
233
|
+
// // PUT without last GET on resource
|
|
234
|
+
// useNewPollStrategy = true;
|
|
235
|
+
// } else if (
|
|
236
|
+
// verb === "post" &&
|
|
237
|
+
// lroMetadata.finalStep &&
|
|
238
|
+
// lroMetadata.finalStep.kind === "pollingSuccessProperty" &&
|
|
239
|
+
// lroMetadata.finalStep.target.name === "result"
|
|
240
|
+
// ) {
|
|
241
|
+
// // POST with final result in "result" property
|
|
242
|
+
// useNewPollStrategy = true;
|
|
243
|
+
// }
|
|
244
|
+
}
|
|
215
245
|
export function getDurationFormat(encode) {
|
|
216
246
|
let format = "duration-rfc3339";
|
|
217
247
|
// duration encoded as seconds
|
package/dist/src/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,QAAQ,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
|