本文整理汇总了C#中IProviderConfiguration.GetProperty方法的典型用法代码示例。如果您正苦于以下问题:C# IProviderConfiguration.GetProperty方法的具体用法?C# IProviderConfiguration.GetProperty怎么用?C# IProviderConfiguration.GetProperty使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IProviderConfiguration
的用法示例。
在下文中一共展示了IProviderConfiguration.GetProperty方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Init
/// <summary>
/// Initializes the storage provider.
/// </summary>
/// <param name="name">The name of this provider instance.</param>
/// <param name="providerRuntime">A Orleans runtime object managing all storage providers.</param>
/// <param name="config">Configuration info for this provider instance.</param>
/// <returns>Completion promise for this operation.</returns>
public virtual Task Init(string name, IProviderRuntime providerRuntime, IProviderConfiguration config)
{
// ASSERT Log != null
Log = providerRuntime.GetLogger(this.GetType().FullName);
Log.Info("Init {0}", name);
Name = name;
ConnectionString = config.GetProperty("ConnectionString");
string mapName = config.GetProperty("MapName");
string shardCredentials = config.GetProperty("ShardCredentials");
string factoryTypeName = config.GetProperty("StateMapFactoryType");
_ignore = config.GetPropertyBool("Ignore", false);
if (_ignore)
Log.Info("!!!Actual SQL persistance will be ignored!!!");
// Look for a specified StateMapFactoryType or the first type implementing IGrainStateMapFactory
Type factoryType = null;
foreach (var asm in AppDomain.CurrentDomain.GetAssemblies())
{
foreach (var type in asm.GetTypes())
{
if (type != null &&
(!string.IsNullOrEmpty(factoryTypeName) && type.FullName == factoryTypeName ||
string.IsNullOrEmpty(factoryTypeName) &&
null != type.GetInterface(typeof (IGrainStateMapFactory).FullName)))
{
factoryType = type;
break;
}
}
}
if (null == factoryType)
throw new ArgumentException(string.Format("Could not locate a state map factory type {0}", factoryTypeName));
var factory = (IGrainStateMapFactory)Activator.CreateInstance(factoryType);
var grainStateMap = factory.CreateGrainStateMap();
_dataManager = new SqlDataManager(providerRuntime.GetLogger("SqlDataManager"), grainStateMap, ConnectionString, shardCredentials, mapName);
return TaskDone.Done;
}
示例2: PopulateFromProviderConfig
/// <summary>
/// Utility function to populate config from provider config
/// </summary>
/// <param name="providerConfiguration"></param>
public virtual void PopulateFromProviderConfig(IProviderConfiguration providerConfiguration)
{
ConnectionString = providerConfiguration.GetProperty(ConnectionStringName, null);
if (string.IsNullOrWhiteSpace(ConnectionString))
{
throw new ArgumentOutOfRangeException("providerConfiguration", ConnectionStringName + " not set.");
}
ConsumerGroup = providerConfiguration.GetProperty(ConsumerGroupName, null);
if (string.IsNullOrWhiteSpace(ConsumerGroup))
{
throw new ArgumentOutOfRangeException("providerConfiguration", ConsumerGroupName + " not set.");
}
Path = providerConfiguration.GetProperty(PathName, null);
if (string.IsNullOrWhiteSpace(Path))
{
throw new ArgumentOutOfRangeException("providerConfiguration", PathName + " not set.");
}
PrefetchCount = providerConfiguration.GetIntProperty(PrefetchCountName, InvalidPrefetchCount);
if (PrefetchCount == InvalidPrefetchCount)
{
PrefetchCount = null;
}
}
示例3: PopulateFromProviderConfig
/// <summary>
/// Utility function to populate config from provider config
/// </summary>
/// <param name="providerConfiguration"></param>
public virtual void PopulateFromProviderConfig(IProviderConfiguration providerConfiguration)
{
DataConnectionString = providerConfiguration.GetProperty(DataConnectionStringName, null);
if (string.IsNullOrWhiteSpace(DataConnectionString))
{
throw new ArgumentOutOfRangeException("providerConfiguration", DataConnectionStringName + " not set.");
}
TableName = providerConfiguration.GetProperty(TableNameName, null);
if (string.IsNullOrWhiteSpace(TableName))
{
throw new ArgumentOutOfRangeException("providerConfiguration", TableNameName + " not set.");
}
PersistInterval = providerConfiguration.GetTimeSpanProperty(PersistIntervalName, DefaultPersistInterval);
CheckpointNamespace = providerConfiguration.GetProperty(CheckpointNamespaceName, null);
if (string.IsNullOrWhiteSpace(CheckpointNamespace))
{
throw new ArgumentOutOfRangeException("providerConfiguration", CheckpointNamespaceName + " not set.");
}
}
示例4: PopulateFromProviderConfig
/// <summary>
/// Utility function to populate config from provider config
/// </summary>
/// <param name="providerConfiguration"></param>
public void PopulateFromProviderConfig(IProviderConfiguration providerConfiguration)
{
EventsInStream = providerConfiguration.GetIntProperty(EventsInStreamName, EventsInStreamDefault);
StreamNamespace = providerConfiguration.GetProperty(StreamNamespaceName, null);
}