Skip to content

Commit

Permalink
Move routes to routes.tsp
Browse files Browse the repository at this point in the history
  • Loading branch information
tgoodyear committed Mar 9, 2025
1 parent 78deaa7 commit a8d0e08
Show file tree
Hide file tree
Showing 3 changed files with 399 additions and 359 deletions.
1 change: 1 addition & 0 deletions specification/mission/Mission.Management/main.tsp
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ import "./resourcetypes/communityEndpoint/communityEndpoint.tsp";
import "./resourcetypes/enclaveEndpoint/enclaveEndpoint.tsp";
import "./version.tsp";
import "./model.tsp";
import "./routes.tsp";

using TypeSpec.Http;
using TypeSpec.Rest;
Expand Down
359 changes: 0 additions & 359 deletions specification/mission/Mission.Management/model.tsp
Original file line number Diff line number Diff line change
Expand Up @@ -187,362 +187,3 @@ model ApprovalResource is ExtensionResource<ApprovalProperties> {
@doc("The name of the approvals resource.")
name: string;
}

@doc("Workload Interface")
@armResourceOperations
interface Workload {
get is ArmResourceRead<WorkloadResource>;
@useFinalStateVia("azure-async-operation")
createOrUpdate is ArmResourceCreateOrReplaceAsync<
WorkloadResource,
LroHeaders = Azure.Core.Foundations.RetryAfterHeader &
ArmAsyncOperationHeader
>;
update is ArmCustomPatchAsync<
WorkloadResource,
PatchModel = WorkloadPatchResource
>;
#suppress "@azure-tools/typespec-azure-resource-manager/arm-delete-operation-response-codes" "For backward compatibility"
#suppress "deprecated" "Backwards compatibility"
delete is ArmResourceDeleteWithoutOkAsync<WorkloadResource>;
listByEnclaveResource is ArmResourceListByParent<WorkloadResource>;
listBySubscription is ArmListBySubscription<WorkloadResource>;
}

@doc("Endpoint Interface")
@armResourceOperations
interface Endpoint {
get is ArmResourceRead<EndpointResource>;
@useFinalStateVia("azure-async-operation")
createOrUpdate is ArmResourceCreateOrReplaceAsync<
EndpointResource,
LroHeaders = Azure.Core.Foundations.RetryAfterHeader &
ArmAsyncOperationHeader
>;
update is ArmCustomPatchAsync<
EndpointResource,
PatchModel = EndpointPatchResource
>;
#suppress "@azure-tools/typespec-azure-resource-manager/arm-delete-operation-response-codes" "For backward compatibility"
#suppress "deprecated" "Backwards compatibility"
delete is ArmResourceDeleteWithoutOkAsync<EndpointResource>;
listByEnclaveResource is ArmResourceListByParent<EndpointResource>;
listBySubscription is ArmListBySubscription<EndpointResource>;
}

@doc("Virtual Enclave Interface")
@armResourceOperations
interface VirtualEnclave {
get is ArmResourceRead<EnclaveResource>;
@useFinalStateVia("azure-async-operation")
createOrUpdate is ArmResourceCreateOrReplaceAsync<
EnclaveResource,
LroHeaders = Azure.Core.Foundations.RetryAfterHeader &
ArmAsyncOperationHeader
>;
update is ArmCustomPatchAsync<
EnclaveResource,
PatchModel = VirtualEnclavePatchResource
>;
#suppress "@azure-tools/typespec-azure-resource-manager/arm-delete-operation-response-codes" "For backward compatibility"
#suppress "deprecated" "Backwards compatibility"
delete is ArmResourceDeleteWithoutOkAsync<EnclaveResource>;
listByResourceGroup is ArmResourceListByParent<EnclaveResource>;
listBySubscription is ArmListBySubscription<EnclaveResource>;

@autoRoute
@doc("Checks that the IP Address Space to be allocated for this Virtual Enclave is available.")
@armResourceAction(EnclaveResource)
@post
@added(Microsoft.Mission.Versions.v2024_06_01_preview)
@removed(Microsoft.Mission.Versions.v2024_06_01_preview)
checkAddressSpaceAvailability(
...ResourceInstanceParameters<EnclaveResource>,

@doc("Check IP Address Space request body.")
@bodyRoot
checkAddressSpaceAvailabilityRequest: CheckAddressSpaceAvailabilityRequest,
): ArmResponse<CheckAddressSpaceAvailabilityResponse> | ErrorResponse;

@doc("Callback that triggers on approval state change.")
@armResourceAction(EnclaveResource)
@added(Microsoft.Mission.Versions.v2024_12_01_preview)
approvalCallback is ArmResourceActionAsync<
EnclaveResource,
ApprovalCallbackRequest,
ApprovalCallbackResponse
>;
@doc("Callback that triggers on approval deletion state change.")
@armResourceAction(EnclaveResource)
@added(Microsoft.Mission.Versions.v2024_12_01_preview)
approvalDeletionCallback is ArmResourceActionAsync<
EnclaveResource,
ApprovalDeletionCallbackRequest,
ApprovalDeletionCallbackResponse
>;
}

@doc("Community Interface")
@armResourceOperations
interface Community {
get is ArmResourceRead<CommunityResource>;
@useFinalStateVia("azure-async-operation")
createOrUpdate is ArmResourceCreateOrReplaceAsync<
CommunityResource,
LroHeaders = Azure.Core.Foundations.RetryAfterHeader &
ArmAsyncOperationHeader
>;
update is ArmCustomPatchAsync<
CommunityResource,
PatchModel = CommunityPatchResource
>;
#suppress "@azure-tools/typespec-azure-resource-manager/arm-delete-operation-response-codes" "For backward compatibility"
#suppress "deprecated" "Backwards compatibility"
delete is ArmResourceDeleteWithoutOkAsync<CommunityResource>;
listByResourceGroup is ArmResourceListByParent<CommunityResource>;
listBySubscription is ArmListBySubscription<CommunityResource>;

@autoRoute
@doc("Checks that the IP Address Space to be allocated for this Community is available.")
@armResourceAction(CommunityResource)
@post
@added(Microsoft.Mission.Versions.v2024_06_01_preview)
checkAddressSpaceAvailability(
...ResourceInstanceParameters<CommunityResource>,

@doc("Check IP Address Space request body.")
@bodyRoot
checkAddressSpaceAvailabilityRequest: CheckAddressSpaceAvailabilityRequest,
): ArmResponse<CheckAddressSpaceAvailabilityResponse> | ErrorResponse;
}

#suppress "@azure-tools/typespec-providerhub/non-breaking-versioning" "New version does not have any breaking change."
@removed(Microsoft.Mission.Versions.v2024_06_01_preview)
@doc("Catalog Interface")
@armResourceOperations
@renamedFrom(Microsoft.Mission.Versions.v2024_06_01_preview, "Catalog")
interface CatalogInterface {
get is ArmResourceRead<CatalogResource>;
@useFinalStateVia("azure-async-operation")
createOrUpdate is ArmResourceCreateOrReplaceAsync<
CatalogResource,
LroHeaders = Azure.Core.Foundations.RetryAfterHeader &
ArmAsyncOperationHeader
>;
update is ArmCustomPatchAsync<
CatalogResource,
PatchModel = CatalogPatchResource
>;
#suppress "@azure-tools/typespec-azure-resource-manager/arm-delete-operation-response-codes" "For backward compatibility"
#suppress "deprecated" "Backwards compatibility"
delete is ArmResourceDeleteAsync<CatalogResource>;
listByResourceGroup is ArmResourceListByParent<CatalogResource>;
listBySubscription is ArmListBySubscription<CatalogResource>;
}

@doc("Internal Connections")
@armResourceOperations
interface InternalConnections {
get is ArmResourceRead<InternalConnection>;
@useFinalStateVia("azure-async-operation")
createOrUpdate is ArmResourceCreateOrReplaceAsync<
InternalConnection,
LroHeaders = Azure.Core.Foundations.RetryAfterHeader &
ArmAsyncOperationHeader
>;
update is ArmCustomPatchAsync<
InternalConnection,
PatchModel = InternalConnectionPatchResource
>;
#suppress "@azure-tools/typespec-azure-resource-manager/arm-delete-operation-response-codes" "For backward compatibility"
#suppress "deprecated" "Backwards compatibility"
delete is ArmResourceDeleteWithoutOkAsync<InternalConnection>;
listByResourceGroup is ArmResourceListByParent<InternalConnection>;
listBySubscription is ArmListBySubscription<InternalConnection>;
}

@added(Microsoft.Mission.Versions.v2024_06_01_preview)
@doc("TransitHub Interface")
@armResourceOperations
interface TransitHub {
get is ArmResourceRead<TransitHubResource>;
@useFinalStateVia("azure-async-operation")
createOrUpdate is ArmResourceCreateOrReplaceAsync<
TransitHubResource,
LroHeaders = Azure.Core.Foundations.RetryAfterHeader &
ArmAsyncOperationHeader
>;
update is ArmCustomPatchAsync<
TransitHubResource,
PatchModel = TransitHubPatchResource
>;
#suppress "@azure-tools/typespec-azure-resource-manager/arm-delete-operation-response-codes" "For backward compatibility"
#suppress "deprecated" "Backwards compatibility"
delete is ArmResourceDeleteWithoutOkAsync<TransitHubResource>;
listByCommunityResource is ArmResourceListByParent<TransitHubResource>;
listBySubscription is ArmListBySubscription<TransitHubResource>;
}

@added(Microsoft.Mission.Versions.v2024_06_01_preview)
@doc("Enclave Connection Interface")
@armResourceOperations
interface EnclaveConnection {
get is ArmResourceRead<EnclaveConnectionResource>;
@useFinalStateVia("azure-async-operation")
createOrUpdate is ArmResourceCreateOrReplaceAsync<
EnclaveConnectionResource,
LroHeaders = Azure.Core.Foundations.RetryAfterHeader &
ArmAsyncOperationHeader
>;
update is ArmCustomPatchAsync<
EnclaveConnectionResource,
PatchModel = EnclaveConnectionPatchResource
>;
#suppress "@azure-tools/typespec-azure-resource-manager/arm-delete-operation-response-codes" "For backward compatibility"
#suppress "deprecated" "Backwards compatibility"
delete is ArmResourceDeleteWithoutOkAsync<EnclaveConnectionResource>;
listByResourceGroup is ArmResourceListByParent<EnclaveConnectionResource>;
listBySubscription is ArmListBySubscription<EnclaveConnectionResource>;

@doc("Callback that triggers on approval state change.")
@armResourceAction(EnclaveConnectionResource)
@added(Microsoft.Mission.Versions.v2024_06_01_preview)
approvalCallback is ArmResourceActionAsync<
EnclaveConnectionResource,
ApprovalCallbackRequest,
ApprovalCallbackResponse
>;
@doc("Callback that triggers on approval deletion state change.")
@armResourceAction(EnclaveConnectionResource)
@added(Microsoft.Mission.Versions.v2024_06_01_preview)
approvalDeletionCallback is ArmResourceActionAsync<
EnclaveConnectionResource,
ApprovalDeletionCallbackRequest,
ApprovalDeletionCallbackResponse
>;
}

@added(Microsoft.Mission.Versions.v2024_06_01_preview)
@doc("Enclave Endpoint Interface")
@armResourceOperations
interface EnclaveEndpoints {
get is ArmResourceRead<EnclaveEndpointResource>;
@useFinalStateVia("azure-async-operation")
createOrUpdate is ArmResourceCreateOrReplaceAsync<
EnclaveEndpointResource,
LroHeaders = Azure.Core.Foundations.RetryAfterHeader &
ArmAsyncOperationHeader
>;
update is ArmCustomPatchAsync<
EnclaveEndpointResource,
PatchModel = EnclaveEndpointPatchResource
>;
#suppress "@azure-tools/typespec-azure-resource-manager/arm-delete-operation-response-codes" "For backward compatibility"
#suppress "deprecated" "Backwards compatibility"
delete is ArmResourceDeleteWithoutOkAsync<EnclaveEndpointResource>;
listByEnclaveResource is ArmResourceListByParent<EnclaveEndpointResource>;
listBySubscription is ArmListBySubscription<EnclaveEndpointResource>;

@doc("Callback that triggers on approval state change.")
@armResourceAction(EnclaveEndpointResource)
@added(Microsoft.Mission.Versions.v2024_12_01_preview)
approvalCallback is ArmResourceActionAsync<
EnclaveEndpointResource,
ApprovalCallbackRequest,
ApprovalCallbackResponse
>;
@doc("Callback that triggers on approval deletion state change.")
@armResourceAction(EnclaveEndpointResource)
@added(Microsoft.Mission.Versions.v2024_12_01_preview)
approvalDeletionCallback is ArmResourceActionAsync<
EnclaveEndpointResource,
ApprovalDeletionCallbackRequest,
ApprovalDeletionCallbackResponse
>;
}

@added(Microsoft.Mission.Versions.v2024_06_01_preview)
@doc("Community Endpoint Interface")
@armResourceOperations
interface CommunityEndpoints {
get is ArmResourceRead<CommunityEndpointResource>;
@useFinalStateVia("azure-async-operation")
createOrUpdate is ArmResourceCreateOrReplaceAsync<
CommunityEndpointResource,
LroHeaders = Azure.Core.Foundations.RetryAfterHeader &
ArmAsyncOperationHeader
>;
update is ArmCustomPatchAsync<
CommunityEndpointResource,
PatchModel = CommunityEndpointPatchResource
>;
#suppress "@azure-tools/typespec-azure-resource-manager/arm-delete-operation-response-codes" "For backward compatibility"
#suppress "deprecated" "Backwards compatibility"
delete is ArmResourceDeleteWithoutOkAsync<CommunityEndpointResource>;
listByCommunityResource is ArmResourceListByParent<CommunityEndpointResource>;
listBySubscription is ArmListBySubscription<CommunityEndpointResource>;

@doc("Callback that triggers on approval state change.")
@armResourceAction(CommunityEndpointResource)
@added(Microsoft.Mission.Versions.v2024_12_01_preview)
approvalCallback is ArmResourceActionAsync<
CommunityEndpointResource,
ApprovalCallbackRequest,
ApprovalCallbackResponse
>;
@doc("Callback that triggers on approval deletion state change.")
@armResourceAction(CommunityEndpointResource)
@added(Microsoft.Mission.Versions.v2024_12_01_preview)
approvalDeletionCallback is ArmResourceActionAsync<
CommunityEndpointResource,
ApprovalDeletionCallbackRequest,
ApprovalDeletionCallbackResponse
>;
}

@doc("External Connections")
@armResourceOperations
interface ExternalConnections {
get is ArmResourceRead<ExternalConnection>;
@useFinalStateVia("azure-async-operation")
createOrUpdate is ArmResourceCreateOrReplaceAsync<
ExternalConnection,
LroHeaders = Azure.Core.Foundations.RetryAfterHeader &
ArmAsyncOperationHeader
>;
update is ArmCustomPatchAsync<
ExternalConnection,
PatchModel = ExternalConnectionPatchResource
>;
#suppress "@azure-tools/typespec-azure-resource-manager/arm-delete-operation-response-codes" "For backward compatibility"
#suppress "deprecated" "Backwards compatibility"
delete is ArmResourceDeleteWithoutOkAsync<ExternalConnection>;
listByResourceGroup is ArmResourceListByParent<ExternalConnection>;
listBySubscription is ArmListBySubscription<ExternalConnection>;
}

@added(Microsoft.Mission.Versions.v2024_06_01_preview)
@doc("Approval Interface")
@armResourceOperations
interface Approval {
get is ArmResourceRead<ApprovalResource>;
@useFinalStateVia("azure-async-operation")
createOrUpdate is ArmResourceCreateOrReplaceAsync<
ApprovalResource,
LroHeaders = Azure.Core.Foundations.RetryAfterHeader &
ArmAsyncOperationHeader
>;
listByParent is ArmResourceListByParent<ApprovalResource>;
update is ArmCustomPatchAsync<
ApprovalResource,
PatchModel = ApprovalPatchResource
>;
delete is ArmResourceDeleteWithoutOkAsync<ApprovalResource>;
@doc("Upon receiving approval or rejection from approver, this facilitates actions on approval resource")
@armResourceAction(ApprovalResource)
initiatorCallback is ArmResourceActionAsync<
ApprovalResource,
InitiatorCallbackRequest,
InitiatorCallbackResponse
>;
}
Loading

0 comments on commit a8d0e08

Please sign in to comment.