mirror of
https://github.com/apache/jclouds.git
synced 2025-02-16 15:08:28 +00:00
Merge pull request #446 from ahgittin/1.4.x-fix-location-npe-and-containment-direction-semantics
Fix location npe and containment direction semantics
This commit is contained in:
commit
76f8e9e354
@ -139,17 +139,20 @@ public class TemplateBuilderImpl implements TemplateBuilder {
|
|||||||
*
|
*
|
||||||
* If the input location is null, then the data isn't location sensitive
|
* If the input location is null, then the data isn't location sensitive
|
||||||
*
|
*
|
||||||
* If the input location is a parent of the specified location, then we are ok.
|
* If the input location is a child (descendent, recursively) of the specified location, then we are ok.
|
||||||
*/
|
*/
|
||||||
final Predicate<ComputeMetadata> locationPredicate = new Predicate<ComputeMetadata>() {
|
final Predicate<ComputeMetadata> locationPredicate = new Predicate<ComputeMetadata>() {
|
||||||
@Override
|
@Override
|
||||||
public boolean apply(ComputeMetadata input) {
|
public boolean apply(ComputeMetadata input) {
|
||||||
boolean returnVal = true;
|
if (location == null) return true;
|
||||||
if (location != null && input.getLocation() != null)
|
Location inputLocation = input.getLocation();
|
||||||
returnVal = location.equals(input.getLocation()) || location.getParent() != null
|
if (inputLocation == null) return true;
|
||||||
&& location.getParent().equals(input.getLocation()) || location.getParent().getParent() != null
|
while (inputLocation!=null) {
|
||||||
&& location.getParent().getParent().equals(input.getLocation());
|
if (location.equals(inputLocation))
|
||||||
return returnVal;
|
return true;
|
||||||
|
inputLocation = inputLocation.getParent();
|
||||||
|
}
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
Loading…
x
Reference in New Issue
Block a user