heat/heat
Thomas Spatzier b160972b08 Only do property validation in validate()
This patch changes resource property validation to only validate
properties in the Properties.validate() method.

So far, validation was done for each access to a property's value
in the __getitem__ method of the Properties class. This causes a
lot of un-necessary revalidation and especially with custom
constraints for flavors, images etc. this can become very expensive.

Doing validation in the validate() method should be sufficient since
this invoked as part of the pre-processing of resource actions that
receive new or updated properties (CREATE, UPDATE).

As part of the change in properties.py the validate_data method of
Property was also renamed to get_value with an optional validate
flag, since to the most part this method is really used to get a
sanitized representation of a property's value with only basic
data type checking.

Partial-Bug: #1324102

Change-Id: Ibe0aefbe8fa554c0cf227f16f971baedaa52cd8d
2014-06-30 10:19:50 +02:00
..
api Port to oslo.messaging 2014-06-26 06:45:52 +02:00
cloudinit Remove translation from loguserdata 2014-06-01 17:45:46 +02:00
cmd Sync latest oslo.db code 2014-04-11 10:48:46 +03:00
common Port to oslo.messaging 2014-06-26 06:45:52 +02:00
db Allow raw templates to be updated in the DB 2014-06-16 11:13:30 -04:00
doc Move resource doc generation to doc/source/ext 2013-11-13 15:21:04 +13:00
engine Only do property validation in validate() 2014-06-30 10:19:50 +02:00
locale Remove all mostly untranslated PO files 2014-05-22 18:41:06 +02:00
openstack Port to oslo.messaging 2014-06-26 06:45:52 +02:00
rpc Port to oslo.messaging 2014-06-26 06:45:52 +02:00
scaling Use add_resource() to build autoscaling templates 2014-06-05 13:45:14 -04:00
tests Only do property validation in validate() 2014-06-30 10:19:50 +02:00
__init__.py Make the first line of every file consistent. 2014-03-04 09:03:04 -06:00
version.py Make the first line of every file consistent. 2014-03-04 09:03:04 -06:00