本文整理汇总了C#中Akka.Configuration.Config.GetInt方法的典型用法代码示例。如果您正苦于以下问题:C# Config.GetInt方法的具体用法?C# Config.GetInt怎么用?C# Config.GetInt使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Akka.Configuration.Config
的用法示例。
在下文中一共展示了Config.GetInt方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: UserWorker
public UserWorker(ClusterNodeContext context, Config config)
{
_context = context;
_channelType = (ChannelType)Enum.Parse(typeof(ChannelType), config.GetString("type", "Tcp"), true);
_listenEndPoint = new IPEndPoint(IPAddress.Any, config.GetInt("port", 0));
var connectAddress = config.GetString("connect-address");
var connectPort = config.GetInt("connect-port", _listenEndPoint.Port);
_connectEndPoint = new IPEndPoint(connectAddress != null ? IPAddress.Parse(connectAddress) : IPAddress.Loopback, connectPort);
}
示例2: RemoteSettings
public RemoteSettings(Config config)
{
//TODO: need to add value validation for each field
Config = config;
LogReceive = config.GetBoolean("akka.remote.log-received-messages");
LogSend = config.GetBoolean("akka.remote.log-sent-messages");
var bufferSizeLogKey = "akka.remote.log-buffer-size-exceeding";
if (config.GetString(bufferSizeLogKey).ToLowerInvariant().Equals("off") ||
config.GetString(bufferSizeLogKey).ToLowerInvariant().Equals("false"))
{
LogBufferSizeExceeding = Int32.MaxValue;
}
else
{
LogBufferSizeExceeding = config.GetInt(bufferSizeLogKey);
}
UntrustedMode = config.GetBoolean("akka.remote.untrusted-mode");
TrustedSelectionPaths = new HashSet<string>(config.GetStringList("akka.remote.trusted-selection-paths"));
RemoteLifecycleEventsLogLevel = config.GetString("akka.remote.log-remote-lifecycle-events") ?? "DEBUG";
Dispatcher = config.GetString("akka.remote.use-dispatcher");
if (RemoteLifecycleEventsLogLevel.Equals("on", StringComparison.OrdinalIgnoreCase)) RemoteLifecycleEventsLogLevel = "DEBUG";
FlushWait = config.GetTimeSpan("akka.remote.flush-wait-on-shutdown");
ShutdownTimeout = config.GetTimeSpan("akka.remote.shutdown-timeout");
TransportNames = config.GetStringList("akka.remote.enabled-transports");
Transports = (from transportName in TransportNames
let transportConfig = TransportConfigFor(transportName)
select new TransportSettings(transportConfig)).ToArray();
Adapters = ConfigToMap(config.GetConfig("akka.remote.adapters"));
BackoffPeriod = config.GetTimeSpan("akka.remote.backoff-interval");
RetryGateClosedFor = config.GetTimeSpan("akka.remote.retry-gate-closed-for", TimeSpan.Zero);
UsePassiveConnections = config.GetBoolean("akka.remote.use-passive-connections");
SysMsgBufferSize = config.GetInt("akka.remote.system-message-buffer-size");
SysResendTimeout = config.GetTimeSpan("akka.remote.resend-interval");
SysResendLimit = config.GetInt("akka.remote.resend-limit");
InitialSysMsgDeliveryTimeout = config.GetTimeSpan("akka.remote.initial-system-message-delivery-timeout");
QuarantineSilentSystemTimeout = config.GetTimeSpan("akka.remote.quarantine-after-silence");
SysMsgAckTimeout = config.GetTimeSpan("akka.remote.system-message-ack-piggyback-timeout");
QuarantineDuration = config.GetTimeSpan("akka.remote.prune-quarantine-marker-after");
StartupTimeout = config.GetTimeSpan("akka.remote.startup-timeout");
CommandAckTimeout = config.GetTimeSpan("akka.remote.command-ack-timeout");
WatchFailureDetectorConfig = config.GetConfig("akka.remote.watch-failure-detector");
WatchFailureDetectorImplementationClass = WatchFailureDetectorConfig.GetString("implementation-class");
WatchHeartBeatInterval = WatchFailureDetectorConfig.GetTimeSpan("heartbeat-interval");
WatchUnreachableReaperInterval = WatchFailureDetectorConfig.GetTimeSpan("unreachable-nodes-reaper-interval");
WatchHeartbeatExpectedResponseAfter = WatchFailureDetectorConfig.GetTimeSpan("expected-response-after");
}
示例3: Create
/// <summary>
/// Creates cluster publish subscribe settings from provided configuration with the same layout as `akka.cluster.pub-sub`.
/// </summary>
public static DistributedPubSubSettings Create(Config config)
{
RoutingLogic routingLogic = null;
var routingLogicName = config.GetString("routing-logic");
switch (routingLogicName)
{
case "random":
routingLogic = new RandomLogic();
break;
case "round-robin":
routingLogic = new RoundRobinRoutingLogic();
break;
case "broadcast":
routingLogic = new BroadcastRoutingLogic();
break;
case "consistent-hashing":
throw new ArgumentException("Consistent hashing routing logic cannot be used by the pub-sub mediator");
default:
throw new ArgumentException("Unknown routing logic is tried to be applied to the pub-sub mediator: " +
routingLogicName);
}
return new DistributedPubSubSettings(
config.GetString("role"),
routingLogic,
config.GetTimeSpan("gossip-interval"),
config.GetTimeSpan("removed-time-to-live"),
config.GetInt("max-delta-elements"));
}
示例4: SessionSettings
public SessionSettings(Config config)
{
if (config == null) throw new ArgumentNullException("config");
Builder = Cluster.Builder();
// Get IP and port configuration
int port = config.GetInt("port", 9042);
IPEndPoint[] contactPoints = ParseContactPoints(config.GetStringList("contact-points"), port);
Builder.AddContactPoints(contactPoints);
// Support user/pass authentication
if (config.HasPath("credentials"))
Builder.WithCredentials(config.GetString("credentials.username"), config.GetString("credentials.password"));
// Support SSL
if (config.GetBoolean("ssl"))
Builder.WithSSL();
// Support compression
string compressionTypeConfig = config.GetString("compression");
if (compressionTypeConfig != null)
{
var compressionType = (CompressionType) Enum.Parse(typeof (CompressionType), compressionTypeConfig, true);
Builder.WithCompression(compressionType);
}
}
示例5: RemoteSettings
public RemoteSettings(Config config)
{
Config = config;
LogReceive = config.GetBoolean("akka.remote.log-received-messages");
LogSend = config.GetBoolean("akka.remote.log-sent-messages");
UntrustedMode = config.GetBoolean("akka.remote.untrusted-mode");
TrustedSelectionPaths = new HashSet<string>(config.GetStringList("akka.remote.trusted-selection-paths"));
RemoteLifecycleEventsLogLevel = config.GetString("akka.remote.log-remote-lifecycle-events") ?? "DEBUG";
if (RemoteLifecycleEventsLogLevel.Equals("on")) RemoteLifecycleEventsLogLevel = "DEBUG";
FlushWait = config.GetMillisDuration("akka.remote.flush-wait-on-shutdown");
ShutdownTimeout = config.GetMillisDuration("akka.remote.shutdown-timeout");
TransportNames = config.GetStringList("akka.remote.enabled-transports");
Transports = (from transportName in TransportNames
let transportConfig = TransportConfigFor(transportName)
select new TransportSettings(transportConfig)).ToArray();
Adapters = ConfigToMap(config.GetConfig("akka.remote.adapters"));
BackoffPeriod = config.GetMillisDuration("akka.remote.backoff-interval");
RetryGateClosedFor = config.GetMillisDuration("akka.remote.retry-gate-closed-for", TimeSpan.Zero);
UsePassiveConnections = config.GetBoolean("akka.remote.use-passive-connections");
SysMsgBufferSize = config.GetInt("akka.remote.system-message-buffer-size");
SysResendTimeout = config.GetMillisDuration("akka.remote.resend-interval");
InitialSysMsgDeliveryTimeout = config.GetMillisDuration("akka.remote.initial-system-message-delivery-timeout");
SysMsgAckTimeout = config.GetMillisDuration("akka.remote.system-message-ack-piggyback-timeout");
QuarantineDuration = config.GetMillisDuration("akka.remote.prune-quarantine-marker-after");
StartupTimeout = config.GetMillisDuration("akka.remote.startup-timeout");
CommandAckTimeout = config.GetMillisDuration("akka.remote.command-ack-timeout");
}
示例6: BroadcastPool
/// <summary>
/// Initializes a new instance of the <see cref="BroadcastPool"/> class.
/// </summary>
/// <param name="config">The configuration used to configure the pool.</param>
public BroadcastPool(Config config)
: this(
nrOfInstances: config.GetInt("nr-of-instances"),
resizer: Resizer.FromConfig(config),
supervisorStrategy: Pool.DefaultSupervisorStrategy,
routerDispatcher: Dispatchers.DefaultDispatcherId,
usePoolDispatcher: config.HasPath("pool-dispatcher"))
{
}
示例7: PhiAccrualFailureDetector
/// <summary>
/// Constructor that reads parameters from config.
/// Expecting config properties named 'threshold', 'max-sample-size',
/// 'min-std-deviation', 'acceptable-heartbeat-pause', and 'heartbeat-interval'.
/// </summary>
public PhiAccrualFailureDetector(Config config, EventStream ev)
: this(DefaultClock)
{
_threshold = config.GetDouble("threshold");
_maxSampleSize = config.GetInt("max-sample-size");
_minStdDeviation = config.GetTimeSpan("min-std-deviation");
_acceptableHeartbeatPause = config.GetTimeSpan("acceptable-heartbeat-pause");
_firstHeartbeatEstimate = config.GetTimeSpan("heartbeat-interval");
state = new State(FirstHeartBeat, null);
}
示例8: TcpTransport
public TcpTransport(ActorSystem system, Config config) : base(system, config)
{
string protocol = "akka." + config.GetString("transport-protocol");
SchemeIdentifier = protocol;
string host = config.GetString("hostname");
int port = config.GetInt("port");
Address = new Address(protocol, system.Name, host, port);
log = Logging.GetLogger(system, this);
server = new TcpServer(system, Address);
}
示例9: Create
public static ClusterSingletonProxySettings Create(Config config)
{
var role = config.GetString("role");
if (role == string.Empty) role = null;
return new ClusterSingletonProxySettings(
singletonName: config.GetString("singleton-name"),
role: role,
singletonIdentificationInterval: config.GetTimeSpan("singleton-identification-interval"),
bufferSize: config.GetInt("buffer-size"));
}
示例10: CanMergeObjects
public void CanMergeObjects()
{
var hocon1 = @"
a {
b = 123
c = 456
d = 789
sub {
aa = 123
}
}
";
var hocon2 = @"
a {
c = 999
e = 888
sub {
bb = 456
}
}
";
var root1 = Parser.Parse(hocon1,null);
var root2 = Parser.Parse(hocon2, null);
var obj1 = root1.Value.GetObject();
var obj2 = root2.Value.GetObject();
obj1.Merge(obj2);
var config = new Config(root1);
Assert.AreEqual(123, config.GetInt("a.b"));
Assert.AreEqual(456, config.GetInt("a.c"));
Assert.AreEqual(789, config.GetInt("a.d"));
Assert.AreEqual(888, config.GetInt("a.e"));
Assert.AreEqual(888, config.GetInt("a.e"));
Assert.AreEqual(123, config.GetInt("a.sub.aa"));
Assert.AreEqual(456, config.GetInt("a.sub.bb"));
}
示例11: ClusterSettings
public ClusterSettings(Config config, string systemName)
{
//TODO: Requiring!
var cc = config.GetConfig("akka.cluster");
LogInfo = cc.GetBoolean("log-info");
_failureDetectorConfig = cc.GetConfig("failure-detector");
FailureDetectorImplementationClass = _failureDetectorConfig.GetString("implementation-class");
HeartbeatInterval = _failureDetectorConfig.GetTimeSpan("heartbeat-interval");
HeartbeatExpectedResponseAfter = _failureDetectorConfig.GetTimeSpan("expected-response-after");
MonitoredByNrOfMembers = _failureDetectorConfig.GetInt("monitored-by-nr-of-members");
SeedNodes = cc.GetStringList("seed-nodes").Select(Address.Parse).ToImmutableList();
SeedNodeTimeout = cc.GetTimeSpan("seed-node-timeout");
RetryUnsuccessfulJoinAfter = cc.GetTimeSpanWithOffSwitch("retry-unsuccessful-join-after");
PeriodicTasksInitialDelay = cc.GetTimeSpan("periodic-tasks-initial-delay");
GossipInterval = cc.GetTimeSpan("gossip-interval");
GossipTimeToLive = cc.GetTimeSpan("gossip-time-to-live");
LeaderActionsInterval = cc.GetTimeSpan("leader-actions-interval");
UnreachableNodesReaperInterval = cc.GetTimeSpan("unreachable-nodes-reaper-interval");
PublishStatsInterval = cc.GetTimeSpanWithOffSwitch("publish-stats-interval");
var key = "down-removal-margin";
DownRemovalMargin = cc.GetString(key).ToLowerInvariant().Equals("off")
? TimeSpan.Zero
: cc.GetTimeSpan("down-removal-margin");
AutoDownUnreachableAfter = cc.GetTimeSpanWithOffSwitch("auto-down-unreachable-after");
Roles = cc.GetStringList("roles").ToImmutableHashSet();
MinNrOfMembers = cc.GetInt("min-nr-of-members");
//TODO:
//_minNrOfMembersOfRole = cc.GetConfig("role").Root.GetArray().ToImmutableDictionary(o => o. )
_useDispatcher = cc.GetString("use-dispatcher");
if (String.IsNullOrEmpty(_useDispatcher)) _useDispatcher = Dispatchers.DefaultDispatcherId;
GossipDifferentViewProbability = cc.GetDouble("gossip-different-view-probability");
ReduceGossipDifferentViewProbability = cc.GetInt("reduce-gossip-different-view-probability");
SchedulerTickDuration = cc.GetTimeSpan("scheduler.tick-duration");
SchedulerTicksPerWheel = cc.GetInt("scheduler.ticks-per-wheel");
MinNrOfMembersOfRole = cc.GetConfig("role").Root.GetObject().Items
.ToImmutableDictionary(kv => kv.Key, kv => kv.Value.GetObject().GetKey("min-nr-of-members").GetInt());
VerboseHeartbeatLogging = cc.GetBoolean("debug.verbose-heartbeat-logging");
var downingProviderClassName = cc.GetString("downing-provider-class");
if (!string.IsNullOrEmpty(downingProviderClassName))
DowningProviderType = Type.GetType(downingProviderClassName, true);
else if (AutoDownUnreachableAfter.HasValue)
DowningProviderType = typeof(AutoDowning);
else
DowningProviderType = typeof(NoDowning);
}
示例12: Create
/// <summary>
/// Create settings from a configuration with the same layout as the default configuration "akka.cluster.client.receptionist".
/// </summary>
public static ClusterReceptionistSettings Create(Config config)
{
var role = config.GetString("role");
if (string.IsNullOrEmpty(role)) role = null;
return new ClusterReceptionistSettings(
role,
config.GetInt("number-of-contacts"),
config.GetTimeSpan("response-tunnel-receive-timeout"),
config.GetTimeSpan("heartbeat-interval"),
config.GetTimeSpan("acceptable-heartbeat-pause"),
config.GetTimeSpan("failure-detection-interval"));
}
示例13: Create
/// <summary>
/// Java API: Create settings from a configuration with the same layout as the default configuration 'akka.cluster.client'.
/// </summary>
public static ClusterClientSettings Create(Config config)
{
var initialContacts = config.GetStringList("initial-contacts").Select(ActorPath.Parse).ToImmutableSortedSet();
TimeSpan? reconnectTimeout = config.GetString("reconnect-timeout").Equals("off")
? null
: (TimeSpan?)config.GetTimeSpan("reconnect-timeout");
return new ClusterClientSettings(initialContacts,
config.GetTimeSpan("establishing-get-contacts-interval"),
config.GetTimeSpan("refresh-contacts-interval"),
config.GetTimeSpan("heartbeat-interval"),
config.GetTimeSpan("acceptable-heartbeat-pause"),
config.GetInt("buffer-size"),
reconnectTimeout);
}
示例14: ClusterSettings
public ClusterSettings(Config config, string systemName)
{
//TODO: Requiring!
var cc = config.GetConfig("akka.cluster");
_logInfo = cc.GetBoolean("log-info");
_failureDetectorConfig = cc.GetConfig("failure-detector");
_failureDetectorImplementationClass = _failureDetectorConfig.GetString("implementation-class");
_heartbeatInterval = _failureDetectorConfig.GetTimeSpan("heartbeat-interval");
_heartbeatExpectedResponseAfter = _failureDetectorConfig.GetTimeSpan("expected-response-after");
_monitoredByNrOfMembers = _failureDetectorConfig.GetInt("monitored-by-nr-of-members");
_seedNodes = cc.GetStringList("seed-nodes").Select(Address.Parse).ToImmutableList();
_seedNodeTimeout = cc.GetTimeSpan("seed-node-timeout");
_retryUnsuccessfulJoinAfter = cc.GetTimeSpanWithOffSwitch("retry-unsuccessful-join-after");
_periodicTasksInitialDelay = cc.GetTimeSpan("periodic-tasks-initial-delay");
_gossipInterval = cc.GetTimeSpan("gossip-interval");
_gossipTimeToLive = cc.GetTimeSpan("gossip-time-to-live");
_leaderActionsInterval = cc.GetTimeSpan("leader-actions-interval");
_unreachableNodesReaperInterval = cc.GetTimeSpan("unreachable-nodes-reaper-interval");
_publishStatsInterval = cc.GetTimeSpanWithOffSwitch("publish-stats-interval");
_downRemovalMargin = cc.GetTimeSpan("down-removal-margin");
_autoDownUnreachableAfter = cc.GetTimeSpanWithOffSwitch("auto-down-unreachable-after");
_roles = cc.GetStringList("roles").ToImmutableHashSet();
_minNrOfMembers = cc.GetInt("min-nr-of-members");
//TODO:
//_minNrOfMembersOfRole = cc.GetConfig("role").Root.GetArray().ToImmutableDictionary(o => o. )
//TODO: Ignored jmx
_useDispatcher = cc.GetString("use-dispatcher");
if (String.IsNullOrEmpty(_useDispatcher)) _useDispatcher = Dispatchers.DefaultDispatcherId;
_gossipDifferentViewProbability = cc.GetDouble("gossip-different-view-probability");
_reduceGossipDifferentViewProbability = cc.GetInt("reduce-gossip-different-view-probability");
_schedulerTickDuration = cc.GetTimeSpan("scheduler.tick-duration");
_schedulerTicksPerWheel = cc.GetInt("scheduler.ticks-per-wheel");
_metricsEnabled = cc.GetBoolean("metrics.enabled");
_metricsCollectorClass = cc.GetString("metrics.collector-class");
_metricsInterval = cc.GetTimeSpan("metrics.collect-interval");
_metricsGossipInterval = cc.GetTimeSpan("metrics.gossip-interval");
_metricsMovingAverageHalfLife = cc.GetTimeSpan("metrics.moving-average-half-life");
_minNrOfMembersOfRole = cc.GetConfig("role").Root.GetObject().Items
.ToImmutableDictionary(kv => kv.Key, kv => kv.Value.GetObject().GetKey("min-nr-of-members").GetInt());
_verboseHeartbeatLogging = cc.GetBoolean("debug.verbose-heartbeat-logging");
}
示例15: ConsistentHashingPool
/// <summary>
/// Initializes a new instance of the <see cref="ConsistentHashingPool"/> class.
///
/// <note>
/// 'virtual-nodes-factor' defaults to 0 (zero) if it is not defined in the provided configuration.
/// </note>
/// </summary>
/// <param name="config">The configuration used to configure the pool.</param>
public ConsistentHashingPool(Config config)
: this(
nrOfInstances: config.GetInt("nr-of-instances"),
resizer: Resizer.FromConfig(config),
supervisorStrategy: Pool.DefaultSupervisorStrategy,
routerDispatcher: Dispatchers.DefaultDispatcherId,
usePoolDispatcher: config.HasPath("pool-dispatcher"))
{
VirtualNodesFactor = config.GetInt("virtual-nodes-factor");
}