create NS
[vfc/nfvo/lcm.git] / lcm / ns / urls.py
1 # Copyright 2016-2017 ZTE Corporation.
2 #
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
6 #
7 #         http://www.apache.org/licenses/LICENSE-2.0
8 #
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
14 from django.conf.urls import url
15 from rest_framework.urlpatterns import format_suffix_patterns
16
17 from lcm.ns.views.deprecated.create_ns_view import CreateNSView
18 from lcm.ns.views.deprecated.get_del_ns_view import NSDetailView
19 from lcm.ns.views.deprecated.inst_ns_view import NSInstView
20 from lcm.ns.views.deprecated.term_ns_view import TerminateNSView
21 from lcm.ns.views.sol.ns_instances_views import NSInstancesView, IndividualNsInstanceView
22 from lcm.ns.views.sol.nslcm_op_views import InstantiateNsView, TerminateNsView
23 from lcm.ns.views.heal_ns_view import NSHealView
24 from lcm.ns.views.inst_ns_post_deal_view import NSInstPostDealView
25 from lcm.ns.views.lcm_op_occs_view import QueryMultiNsLcmOpOccs, QuerySingleNsLcmOpOcc
26 from lcm.ns.views.scale_ns_views import NSManualScaleView
27 from lcm.ns.views.subscriptions_view import SubscriptionsView
28 from lcm.ns.views.update_ns_view import NSUpdateView
29
30 urlpatterns = [
31     # API will be deprecated in the future release
32     url(r'^api/nslcm/v1/ns$', CreateNSView.as_view()),
33     url(r'^api/nslcm/v1/ns/(?P<ns_instance_id>[0-9a-zA-Z_-]+)/instantiate$', NSInstView.as_view()),
34     url(r'^api/nslcm/v1/ns/(?P<ns_instance_id>[0-9a-zA-Z_-]+)/terminate$', TerminateNSView.as_view()),
35     url(r'^api/nslcm/v1/ns/(?P<ns_instance_id>[0-9a-zA-Z_-]+)$', NSDetailView.as_view()),
36     url(r'^api/nslcm/v1/ns/(?P<ns_instance_id>[0-9a-zA-Z_-]+)/postdeal$', NSInstPostDealView.as_view()),
37     url(r'^api/nslcm/v1/ns/(?P<ns_instance_id>[0-9a-zA-Z_-]+)/scale$', NSManualScaleView.as_view()),
38     url(r'^api/nslcm/v1/ns/(?P<ns_instance_id>[0-9a-zA-Z_-]+)/heal$', NSHealView.as_view()),
39     url(r'^api/nslcm/v1/ns_lcm_op_occs$', QueryMultiNsLcmOpOccs.as_view()),
40     url(r'^api/nslcm/v1/ns_lcm_op_occs/(?P<lcmopoccid>[0-9a-zA-Z_-]+)$', QuerySingleNsLcmOpOcc.as_view()),
41     url(r'^api/nslcm/v1/ns/(?P<ns_instance_id>[0-9a-zA-Z_-]+)/update$', NSUpdateView.as_view()),
42
43     # SOL005 URL API definition
44     url(r'^api/nslcm/v1/ns_instances$', NSInstancesView.as_view()),
45     url(r'^api/nslcm/v1/ns_instances$/(?P<ns_instance_id>[0-9a-zA-Z_-]+)/instantiate$', InstantiateNsView.as_view()),
46     url(r'^api/nslcm/v1/ns_instances$/(?P<ns_instance_id>[0-9a-zA-Z_-]+)/terminate$', TerminateNsView.as_view()),
47     url(r'^api/nslcm/v1/ns_instances$/(?P<ns_instance_id>[0-9a-zA-Z_-]+)$', IndividualNsInstanceView.as_view()),
48     url(r'^api/nslcm/v1/subscriptions$', SubscriptionsView.as_view()),
49
50 ]
51
52 urlpatterns = format_suffix_patterns(urlpatterns)