public virtual void InitializeNewNeuraliumTimelineEncryptionParameters(BlockchainServiceSet serviceSet) { // create those no matter what if (this.NeuraliumTimelineFileEncryptionParameters == null) { this.NeuraliumTimelineFileEncryptionParameters = FileEncryptorUtils.GenerateEncryptionParameters(GlobalSettings.ApplicationSettings); var secretKey = new byte[333]; GlobalRandom.GetNextBytes(secretKey); this.NeuraliumTimelineFileSecret = secretKey; } }
public override INeuraliumBlockChainInterface CreateNewChain(IServiceProvider serviceProvider, ChainRuntimeConfiguration chainRuntimeConfiguration = null, IFileSystem fileSystem = null) { chainRuntimeConfiguration = chainRuntimeConfiguration ?? new ChainRuntimeConfiguration(); fileSystem = fileSystem ?? new FileSystem(); DIService.Instance.AddServiceProvider(NeuraliumBlockchainTypes.NeuraliumInstance.Neuralium, serviceProvider); BlockchainServiceSet serviceSet = new BlockchainServiceSet(NeuraliumBlockchainTypes.NeuraliumInstance.Neuralium); INeuraliumCentralCoordinator centralCoordinator = this.CreateCentralCoordinator(serviceSet, chainRuntimeConfiguration, fileSystem); NeuraliumBlockChainInterface chainInterface = new NeuraliumBlockChainInterface(centralCoordinator); centralCoordinator.InitializeContents(this.CreateChainComponents(centralCoordinator, chainInterface)); return(chainInterface); }
public override ACCREDITATION_CERTIFICATE_ACCOUNT_SNAPSHOT_DAL CreateAccreditationCertificateAccountSnapshotDal <ACCREDITATION_CERTIFICATE_ACCOUNT_SNAPSHOT_DAL>(long groupSize, string folderPath, BlockchainServiceSet serviceSet, AppSettingsBase.SerializationTypes serializationType) { return((ACCREDITATION_CERTIFICATE_ACCOUNT_SNAPSHOT_DAL)this.CreateAccreditationCertificatesSnapshotDalFunc(groupSize, folderPath, serviceSet, serializationType)); }
public NeuraliumStandardAccountSnapshotSqliteDal(long groupSize, string folderPath, BlockchainServiceSet serviceSet, INeuraliumChainDalCreationFactory chainDalCreationFactory, AppSettingsBase.SerializationTypes serializationType) : base(groupSize, folderPath, serviceSet, chainDalCreationFactory, serializationType) { }
public override CHAIN_STATE_DAL CreateChainPoolDal <CHAIN_STATE_DAL>(string folderPath, BlockchainServiceSet serviceSet, AppSettingsBase.SerializationTypes serializationType) { return((CHAIN_STATE_DAL)this.CreateChainPoolDalFunc(folderPath, serviceSet, serializationType)); }
public INeuraliumChainOptionsSnapshotDal CreateChainOptionsSnapshotDal(string folderPath, BlockchainServiceSet serviceSet, AppSettingsBase.SerializationTypes serializationType) { return(this.CreateChainOptionsSnapshotDal <INeuraliumChainOptionsSnapshotDal>(folderPath, serviceSet, serializationType)); }
public INeuraliumAccountKeysSnapshotDal CreateStandardAccountKeysSnapshotDal(long groupSize, string folderPath, BlockchainServiceSet serviceSet, AppSettingsBase.SerializationTypes serializationType) { return(this.CreateStandardAccountKeysSnapshotDal <INeuraliumAccountKeysSnapshotDal>(groupSize, folderPath, serviceSet, serializationType)); }
public override TRACKED_ACCOUNTS_DAL CreateTrackedAccountsDal <TRACKED_ACCOUNTS_DAL>(long groupSize, string folderPath, BlockchainServiceSet serviceSet, AppSettingsBase.SerializationTypes serializationType) { return((TRACKED_ACCOUNTS_DAL)this.CreateTrackedAccountsSnapshotDalFunc(groupSize, folderPath, serviceSet, serializationType)); }
public NeuraliumUserWalletFileInfo(string filename, BlockchainServiceSet serviceSet, IWalletSerialisationFal serialisationFal, WalletPassphraseDetails walletSecurityDetails) : base(filename, serviceSet, serialisationFal, walletSecurityDetails) { }
public NeuraliumWalletTimelineFileInfo(IWalletAccount account, string filename, BlockchainServiceSet serviceSet, IWalletSerialisationFal serialisationFal, WalletPassphraseDetails walletSecurityDetails) : base(filename, serviceSet, serialisationFal, walletSecurityDetails) { this.account = account; }
public override void InitializeNewEncryptionParameters(BlockchainServiceSet serviceSet) { base.InitializeNewEncryptionParameters(serviceSet); this.InitializeNewNeuraliumTimelineEncryptionParameters(serviceSet); }
public NeuraliumCentralCoordinator(BlockchainServiceSet serviceSet, ChainRuntimeConfiguration chainRuntimeConfiguration, IFileSystem fileSystem) : base(NeuraliumBlockchainTypes.NeuraliumInstance.Neuralium, serviceSet, chainRuntimeConfiguration, fileSystem) { // make sure we can name our blockchain BlockchainTypes.Instance.AddBlockchainTypeNameProvider(new NeuraliumBlockchainTypeNameProvider()); }
protected override INeuraliumCentralCoordinator CreateCentralCoordinator(BlockchainServiceSet serviceSet, ChainRuntimeConfiguration chainRuntimeConfiguration, IFileSystem fileSystem) { return(new NeuraliumCentralCoordinator(serviceSet, chainRuntimeConfiguration, fileSystem)); }
public override ACCOUNT_KEYS_ACCOUNT_SNAPSHOT_DAL CreateStandardAccountKeysSnapshotDal <ACCOUNT_KEYS_ACCOUNT_SNAPSHOT_DAL>(long groupSize, string folderPath, BlockchainServiceSet serviceSet, AppSettingsBase.SerializationTypes serializationType) { return((ACCOUNT_KEYS_ACCOUNT_SNAPSHOT_DAL)this.CreateStandardAccountKeysSnapshotDalFunc(groupSize, folderPath, serviceSet, serializationType)); }
public NeuraliumWalletAccountSnapshotFileInfo(IWalletAccount account, string filename, BlockchainServiceSet serviceSet, IWalletSerialisationFal serialisationFal, WalletPassphraseDetails walletSecurityDetails) : base(account, filename, serviceSet, serialisationFal, walletSecurityDetails) { }
public override CHAIN_OPTIONS_ACCOUNT_SNAPSHOT_DAL CreateChainOptionsSnapshotDal <CHAIN_OPTIONS_ACCOUNT_SNAPSHOT_DAL>(string folderPath, BlockchainServiceSet serviceSet, AppSettingsBase.SerializationTypes serializationType) { return((CHAIN_OPTIONS_ACCOUNT_SNAPSHOT_DAL)this.CreateChainOptionsSnapshotDalFunc(folderPath, serviceSet, serializationType)); }
public NeuraliumChainSyncMessageFactory(IMainChainMessageFactory mainChainMessageFactory, BlockchainServiceSet serviceSet) : base(mainChainMessageFactory, serviceSet) { }
public INeuraliumChainStateDal CreateChainStateDal(string folderPath, BlockchainServiceSet serviceSet, AppSettingsBase.SerializationTypes serializationType) { return(this.CreateChainStateDal <INeuraliumChainStateDal, INeuraliumChainStateEntry>(folderPath, serviceSet, serializationType)); }
public TestFactory(BlockchainServiceSet serviceSet) : base(serviceSet) { }
public INeuraliumAccreditationCertificatesSnapshotDal CreateAccreditationCertificatesAccountSnapshotDal(long groupSize, string folderPath, BlockchainServiceSet serviceSet, AppSettingsBase.SerializationTypes serializationType) { return(this.CreateAccreditationCertificateAccountSnapshotDal <INeuraliumAccreditationCertificatesSnapshotDal>(groupSize, folderPath, serviceSet, serializationType)); }
public override ITransactionSelectionMethod CreateTransactionSelectionMethod(TransactionSelectionMethodType type, long blockId, BlockElectionDistillate blockElectionDistillate, IWalletProvider walletProvider, BlockChainConfigurations blockChainConfigurations, BlockchainServiceSet serviceSet) { if (blockElectionDistillate.electionContext is INeuraliumElectionContext neuraliumElectionContext) { if (type == TransactionSelectionMethodTypes.Instance.Automatic) { // ok, this one is meant to be automatic. we wlil try to find the best method //TODO: make this more elaborate. Try to response to the various cues we can use like the declared bounty allocator if (neuraliumElectionContext.BountyAllocationMethod.Version.Type.Value == BountyAllocationMethodTypes.Instance.EqualSplit) { type = NeuraliumTransactionSelectionMethodTypes.Instance.HighestTips; } // the default automatic best choice type = NeuraliumTransactionSelectionMethodTypes.Instance.HighestTips; } if (type == NeuraliumTransactionSelectionMethodTypes.Instance.HighestTips) { // ok, nothing special here, lets just maximize profits by choosing the highest paying transactions return(new NeuraliumHighestTipTransactionSelectionMethod(blockId, neuraliumElectionContext.TransactionTipsAllocationMethod, (INeuraliumWalletProviderProxy)walletProvider, blockElectionDistillate.electionContext.MaximumElectedTransactionCount, ((NeuraliumBlockChainConfigurations)blockChainConfigurations).HighestTipTransactionSelectionStrategySettings, serviceSet.BlockchainTimeService)); } } return(base.CreateTransactionSelectionMethod(type, blockId, blockElectionDistillate, walletProvider, blockChainConfigurations, serviceSet)); }
public INeuraliumTrackedAccountsDal CreateTrackedAccountsDal(long groupSize, string folderPath, BlockchainServiceSet serviceSet, AppSettingsBase.SerializationTypes serializationType) { return(this.CreateTrackedAccountsDal <INeuraliumTrackedAccountsDal>(groupSize, folderPath, serviceSet, serializationType)); }
public NeuraliumChainStateSqliteDal(string folderPath, BlockchainServiceSet serviceSet, INeuraliumChainDalCreationFactory chainDalCreationFactory, AppSettingsBase.SerializationTypes serializationType) : base(folderPath, serviceSet, chainDalCreationFactory, serializationType) { }
public override JOINT_ACCOUNT_SNAPSHOT_DAL CreateJointAccountSnapshotDal <JOINT_ACCOUNT_SNAPSHOT_DAL>(long groupSize, string folderPath, BlockchainServiceSet serviceSet, AppSettingsBase.SerializationTypes serializationType) { return((JOINT_ACCOUNT_SNAPSHOT_DAL)this.CreateJointAccountSnapshotDalFunc(groupSize, folderPath, serviceSet, serializationType)); }
public NeuraliumMainChainMessageFactory(BlockchainServiceSet serviceSet) : base(NeuraliumBlockchainTypes.NeuraliumInstance.Neuralium, serviceSet) { }