Monty Taylor 2d472aea49
Rename Resource get and update to not clash with dict
The next change is going to make Resource a subclass of dict so that we
can return Resource objects in the shade layer. Unfortunately, the
Resource base class has two methods, get and update, that conflict with
standard dict method names. To keep things reviewable, just change the
method names.

Most consumers should not be using either of these methods directly.
They are mostly there for lower-level things to use. However, they COULD
be using them, so it's important to note that this is a breaking change.

Change-Id: I2fedeea6e405dcbd333482c1964173ade98ca04d
2018-08-09 07:36:18 -05:00

72 lines
2.8 KiB
Python

# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
from openstack.load_balancer import load_balancer_service as lb_service
from openstack import resource
class Pool(resource.Resource):
resource_key = 'pool'
resources_key = 'pools'
base_path = '/v2.0/lbaas/pools'
service = lb_service.LoadBalancerService()
# capabilities
allow_create = True
allow_list = True
allow_fetch = True
allow_delete = True
allow_commit = True
_query_mapping = resource.QueryParameters(
'health_monitor_id', 'lb_algorithm', 'listener_id', 'loadbalancer_id',
'description', 'name', 'project_id', 'protocol',
'created_at', 'updated_at', 'provisioning_status', 'operating_status',
is_admin_state_up='admin_state_up'
)
#: Properties
#: Timestamp when the pool was created
created_at = resource.Body('created_at')
#: Description for the pool.
description = resource.Body('description')
#: Health Monitor ID
health_monitor_id = resource.Body('healthmonitor_id')
#: The administrative state of the pool *Type: bool*
is_admin_state_up = resource.Body('admin_state_up', type=bool)
#: The loadbalancing algorithm used in the pool
lb_algorithm = resource.Body('lb_algorithm')
#: ID of listener associated with this pool
listener_id = resource.Body('listener_id')
#: List of listeners associated with this pool
listeners = resource.Body('listeners', type=list)
#: ID of load balancer associated with this pool
loadbalancer_id = resource.Body('loadbalancer_id')
#: List of loadbalancers associated with this pool
loadbalancers = resource.Body('loadbalancers', type=list)
#: Members associated with this pool
members = resource.Body('members', type=list)
#: The pool name
name = resource.Body('name')
#: Operating status of the pool
operating_status = resource.Body('operating_status')
#: The ID of the project
project_id = resource.Body('project_id')
#: The protocol of the pool
protocol = resource.Body('protocol')
#: Provisioning status of the pool
provisioning_status = resource.Body('provisioning_status')
#: A JSON object specifying the session persistence for the pool.
session_persistence = resource.Body('session_persistence', type=dict)
#: Timestamp when the pool was updated
updated_at = resource.Body('updated_at')