Class FeatureFactoryImpl<FeatureEndpointType extends FeatureEndpoint>

  • All Implemented Interfaces:
    com.opencloud.sentinel.feature.spi.FeatureFactory

    public final class FeatureFactoryImpl<FeatureEndpointType extends FeatureEndpoint>
    extends java.lang.Object
    implements com.opencloud.sentinel.feature.spi.FeatureFactory
    • Constructor Summary

      Constructors 
      Constructor Description
      FeatureFactoryImpl​(java.lang.String factoryName, com.opencloud.sentinel.feature.spi.FeatureCollection featureCollection, FeatureEndpointType caller, com.opencloud.sentinel.common.SentinelExtensionsCMPFieldsAccess cmpAccess)
      Create a feature factory
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.String getFactoryName()  
      SentinelFeature getSentinelFeature​(java.lang.String name)  
      void initialise​(SentinelPlatformConfigurationReader sentinelConfigurationReader, com.opencloud.sentinel.feature.spi.SentinelFeatureRegisterImpl featureRegisterImpl, com.opencloud.sce.fsmtool.Facilities facilities, java.util.Map<java.lang.String,​java.lang.Object> providers, com.opencloud.sentinel.stats.SentinelFeatureStatsAccess statsAccess, com.opencloud.sentinel.feature.common.lists.AddressListCollection addressListCollection, com.opencloud.rhino.facilities.childrelations.ChildRelationFacility childRelationFacility, com.opencloud.sentinel.feature.sbb.SentinelFeatureSbbSupport featureSbbSupport, com.opencloud.sentinel.feature.spi.init.SentinelTracerSupport sentinelTracerSupport, com.opencloud.sentinel.feature.spi.init.SentinelFrontEnd sentinelFrontEnd, MapperLibrary<?> mapperLibrary, MapperFacilities mapperFacilities, LimiterFilterConditionAccess limiterFilterConditionAccess)
      Initialise a feature factory with additional dependencies needed
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • FeatureFactoryImpl

        public FeatureFactoryImpl​(java.lang.String factoryName,
                                  com.opencloud.sentinel.feature.spi.FeatureCollection featureCollection,
                                  FeatureEndpointType caller,
                                  com.opencloud.sentinel.common.SentinelExtensionsCMPFieldsAccess cmpAccess)
        Create a feature factory
        Parameters:
        factoryName - name of the factory
        featureCollection - the collection of features in the factory
        caller - the user of the factory
        cmpAccess - access to CMP state for features
    • Method Detail

      • initialise

        public void initialise​(SentinelPlatformConfigurationReader sentinelConfigurationReader,
                               com.opencloud.sentinel.feature.spi.SentinelFeatureRegisterImpl featureRegisterImpl,
                               com.opencloud.sce.fsmtool.Facilities facilities,
                               java.util.Map<java.lang.String,​java.lang.Object> providers,
                               com.opencloud.sentinel.stats.SentinelFeatureStatsAccess statsAccess,
                               com.opencloud.sentinel.feature.common.lists.AddressListCollection addressListCollection,
                               com.opencloud.rhino.facilities.childrelations.ChildRelationFacility childRelationFacility,
                               com.opencloud.sentinel.feature.sbb.SentinelFeatureSbbSupport featureSbbSupport,
                               com.opencloud.sentinel.feature.spi.init.SentinelTracerSupport sentinelTracerSupport,
                               com.opencloud.sentinel.feature.spi.init.SentinelFrontEnd sentinelFrontEnd,
                               MapperLibrary<?> mapperLibrary,
                               MapperFacilities mapperFacilities,
                               LimiterFilterConditionAccess limiterFilterConditionAccess)
        Initialise a feature factory with additional dependencies needed
        Parameters:
        sentinelConfigurationReader - platform level sentinel configuration
        featureRegisterImpl - the feature register that holds the current active feature
        facilities - facilities features should use
        providers - access to the ra providers for features
        statsAccess - access to usage stats
        addressListCollection - access to address lists
        featureSbbSupport - for sbb based features
        sentinelTracerSupport - for pojo features that use FSMs
        sentinelFrontEnd - for pojo features that use FSMs
        mapperLibrary - access to mappers
        mapperFacilities - facilities that mappers use
        limiterFilterConditionAccess - access to per-feature limiter filter conditions
      • getFactoryName

        public java.lang.String getFactoryName()
      • getSentinelFeature

        public SentinelFeature getSentinelFeature​(java.lang.String name)
        Specified by:
        getSentinelFeature in interface com.opencloud.sentinel.feature.spi.FeatureFactory
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object