2017-10-06 7 views
0

例:Toggrez Spring自動設定を使用してアプリの設定Beanを作成する際に、どのように機能トグルを使用するのですか?アプリの設定の中にBeanを作成する機能のトグルを使用しての

@RefreshScope 
@Configuration 
@Order(1) 
class AppConfig { 
    @Bean 
    @Autowired 
    public FeatureProvider featureProvider() { 
     return new EnumBasedFeatureProvider(FeatureToggle.class); 
    } 

    @Bean 
    @Autowired 
    ProjectAccess getProjectAccess(DataSource dataSource, HazelcastLocator hazelcastLocator) { 
     if(FeatureToggle.MY_TOGGLE_NAME.isActive()) { 
      return new MyTestClass(); 
     } 
     else { 
      return new YourTestClass(); 
     } 
    } 
} 

答えて

0

あなたは、このようにそれを行うべきではありません。 ;-)

このコードの問題点は、基本的に起動時にトグルを読み込んでからもう一度変更できないことです。それはトグルズが典型的にどのように使われるかではありません。

代わりに、実行時にスイッチを切り替えることができるようにアプリケーションを設計する必要があります。 Togglzは、この場合のために設計されたFeatureProxyFactoryBeanを提供しています。

また、両方の実装の共通インタフェースを作成して手動で作成し、基本的に各メソッド呼び出しのトグルをチェックして正しいインスタンスに委譲する実装を作成することもできます。

関連する問題