[ 
https://issues.apache.org/jira/browse/BROOKLYN-513?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16032898#comment-16032898
 ] 

Aled Sage commented on BROOKLYN-513:
------------------------------------

Possible solutions include:
1. call {{method.setAccessible(true)}} (which is ok as a fallback, but I'd much 
prefer that we didn't rely on that!)
2. instead of doing {{method.invoke()}} using the method declared on 
{{AutoValue_IpOptions.Builder}}, we could find the method that extends 
(declared on the public class {{IpOptions.Builder}}), and call {{.invoke()}} on 
that instead.


> yaml location for azurecompute-arm templateOptions.ipOptions fails
> ------------------------------------------------------------------
>
>                 Key: BROOKLYN-513
>                 URL: https://issues.apache.org/jira/browse/BROOKLYN-513
>             Project: Brooklyn
>          Issue Type: Bug
>    Affects Versions: 0.11.0
>            Reporter: Aled Sage
>
> When attempting to use the very latest jclouds 2.1.0-SNAPSHOT 
> azurecompute-arm with the location yaml below, it fails to convert this to an 
> {{IpOptions}} instance.
> {noformat}
> templateOptions:
>   ipOptions:
>   - subnet: manual-subnet-ambari
> {noformat}
> This is because of how jclouds declares its builder. The 
> {{IpOptions.builder()}} method returns an instance of 
> {{AutoValue_IpOptions.Builder}}, but that class is package-private [1]. 
> Therefore reflectively trying to call 
> {{builder.subnet("manual-subnet-ambari")}} is failing because the method is 
> not accessible.
> [1] 
> https://github.com/jclouds/jclouds-labs/blob/master/azurecompute-arm/src/main/java/org/jclouds/azurecompute/arm/compute/options/IpOptions.java#L60



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to