config.go 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. package core
  2. // QuorumChainConfig is the configuration of Quorum blockchain
  3. type QuorumChainConfig struct {
  4. revertReasonEnabled bool // if we should save the revert reasons in the Tx Receipts
  5. multiTenantEnabled bool // if this blockchain supports multitenancy
  6. privacyMarkerEnabled bool // if the privacy marker is activated
  7. privateTrieCacheEnabled bool // if the private trie cache is enabled
  8. }
  9. // NewQuorumChainConfig creates new config for Quorum chain
  10. func NewQuorumChainConfig(multiTenantEnabled, revertReasonEnabled, privacyMarkerEnabled bool, privateTrieCacheEnabled bool) QuorumChainConfig {
  11. return QuorumChainConfig{
  12. multiTenantEnabled: multiTenantEnabled,
  13. revertReasonEnabled: revertReasonEnabled,
  14. privacyMarkerEnabled: privacyMarkerEnabled,
  15. privateTrieCacheEnabled: privateTrieCacheEnabled,
  16. }
  17. }
  18. // RevertReasonEnabled returns true is revert reason feature is enabled
  19. func (c QuorumChainConfig) RevertReasonEnabled() bool {
  20. return c.revertReasonEnabled
  21. }
  22. // MultiTenantEnabled returns true is multi-tenancy is enabled
  23. func (c QuorumChainConfig) MultiTenantEnabled() bool {
  24. return c.multiTenantEnabled
  25. }
  26. // PrivacyMarkerEnabled returns true is privacy marker is enabled
  27. func (c QuorumChainConfig) PrivacyMarkerEnabled() bool {
  28. return c.privacyMarkerEnabled
  29. }
  30. // PrivateTrieCacheEnabled returns true if the private cache is enabled
  31. func (c QuorumChainConfig) PrivateTrieCacheEnabled() bool {
  32. return c.privateTrieCacheEnabled
  33. }