@@ -5,6 +5,8 @@ pub mod sensitive_properties;
55pub mod storage;
66pub mod tls;
77
8+ use std:: str:: FromStr ;
9+
810use affinity:: get_affinity;
911use authorization:: NifiAuthorization ;
1012use sensitive_properties:: NifiSensitivePropertiesConfig ;
@@ -34,7 +36,11 @@ use stackable_operator::{
3436 shared:: time:: Duration ,
3537 status:: condition:: { ClusterCondition , HasStatusCondition } ,
3638 utils:: crds:: { raw_object_list_schema, raw_object_schema} ,
37- v2:: { config_overrides:: KeyValueConfigOverrides , role_utils:: JavaCommonConfig } ,
39+ v2:: {
40+ config_overrides:: KeyValueConfigOverrides ,
41+ role_utils:: JavaCommonConfig ,
42+ types:: kubernetes:: { ConfigMapName , ListenerClassName , SecretClassName } ,
43+ } ,
3844 versioned:: versioned,
3945} ;
4046use tls:: NifiTls ;
@@ -133,7 +139,7 @@ pub mod versioned {
133139 /// Follow the [logging tutorial](DOCS_BASE_URL_PLACEHOLDER/tutorials/logging-vector-aggregator)
134140 /// to learn how to configure log aggregation with Vector.
135141 #[ serde( skip_serializing_if = "Option::is_none" ) ]
136- pub vector_aggregator_config_map_name : Option < String > ,
142+ pub vector_aggregator_config_map_name : Option < ConfigMapName > ,
137143
138144 #[ serde( flatten) ]
139145 pub clustering_backend : NifiClusteringBackend ,
@@ -171,7 +177,7 @@ pub mod versioned {
171177 ///
172178 /// The Kubernetes provider will be used if this field is unset. Kubernetes is only supported for NiFi 2.x and newer,
173179 /// NiFi 1.x requires ZooKeeper.
174- zookeeper_config_map_name : String ,
180+ zookeeper_config_map_name : ConfigMapName ,
175181 } ,
176182 Kubernetes { } ,
177183 }
@@ -207,7 +213,7 @@ impl v1alpha1::NifiCluster {
207213 }
208214
209215 /// Return user provided server TLS settings
210- pub fn server_tls_secret_class ( & self ) -> & str {
216+ pub fn server_tls_secret_class ( & self ) -> & SecretClassName {
211217 & self . spec . cluster_config . tls . server_secret_class
212218 }
213219}
@@ -465,7 +471,7 @@ pub struct NifiNodeRoleConfig {
465471 pub common : GenericRoleConfig ,
466472
467473 #[ serde( default = "node_default_listener_class" ) ]
468- pub listener_class : String ,
474+ pub listener_class : ListenerClassName ,
469475}
470476
471477impl Default for NifiNodeRoleConfig {
@@ -477,8 +483,9 @@ impl Default for NifiNodeRoleConfig {
477483 }
478484}
479485
480- fn node_default_listener_class ( ) -> String {
481- "cluster-internal" . to_string ( )
486+ fn node_default_listener_class ( ) -> ListenerClassName {
487+ ListenerClassName :: from_str ( "cluster-internal" )
488+ . expect ( "'cluster-internal' is a valid listener class name" )
482489}
483490
484491#[ cfg( test) ]
0 commit comments