File tree Expand file tree Collapse file tree 2 files changed +23
-0
lines changed
Expand file tree Collapse file tree 2 files changed +23
-0
lines changed Original file line number Diff line number Diff line change @@ -104,5 +104,17 @@ def resource_ref? (property)
104104 def typed_array? ( property )
105105 return property . is_a? ( ::Api ::Type ::Array )
106106 end
107+
108+ def nested_object? ( property )
109+ return property . is_a? ( ::Api ::Type ::NestedObject )
110+ end
111+
112+ def generate_requires ( properties , requires = [ ] )
113+ nested_props = properties . select { |type | nested_object? ( type ) }
114+ requires . concat ( properties . reject { |type | primitive? ( type ) || resource_ref? ( type ) || nested_object? ( type ) } . collect ( &:requires ) )
115+ requires . concat ( nested_props . map { |nested_prop | generate_requires ( nested_prop . properties ) } )
116+ requires . concat ( nested_props . map { |nested_prop | nested_prop . property_file } )
117+ requires
118+ end
107119 end
108120end
Original file line number Diff line number Diff line change 1616
1717<%= lines(autogen_notice :ruby) -%>
1818
19+ <%
20+ require 'google/string_utils'
21+
22+ inside_indent = 8
23+
24+ requires = generate_requires(object.all_user_properties)
25+ requires << 'inspec/resource'
26+ requires << 'google/hash_utils'
27+ -%>
28+ <%= lines(emit_requires(requires)) -%>
29+
1930# A provider to manage <%= @api.name -%> resources.
2031<%= lines(indent(
2132 emit_rubocop(binding, :class,
You can’t perform that action at this time.
0 commit comments