Exemple #1
0
        // same as ToString, just full primary key and type code
        private string ToStringImpl(bool detailed)
        {
            string name = string.Empty;

            if (Constants.TryGetSystemGrainName(this, out name))
            {
                return(name);
            }

            var keyString = Key.ToString();
            // this should grab the least-significant half of n1, suffixing it with the key extension.
            string idString = keyString;

            if (!detailed)
            {
                if (keyString.Length >= 48)
                {
                    idString = keyString.Substring(24, 8) + keyString.Substring(48);
                }
                else
                {
                    idString = keyString.Substring(24, 8);
                }
            }

            string fullString = null;

            switch (Category)
            {
            case UniqueKey.Category.Grain:
            case UniqueKey.Category.KeyExtGrain:
                var typeString = GetTypeCode().ToString("X");
                if (!detailed)
                {
                    typeString = typeString.Tail(8);
                }
                fullString = String.Format("*grn/{0}/{1}", typeString, idString);
                break;

            case UniqueKey.Category.Client:
                fullString = "*cli/" + idString;
                break;

            case UniqueKey.Category.SystemTarget:
                string explicitName = Constants.SystemTargetName(this);
                if (GetTypeCode() != 0)
                {
                    var typeStr = GetTypeCode().ToString("X");
                    return(String.Format("{0}/{1}/{2}", explicitName, typeStr, idString));
                }
                fullString = explicitName;
                break;

            default:
                fullString = "???/" + idString;
                break;
            }
            return(detailed ? String.Format("{0}-0x{1, 8:X8}", fullString, GetUniformHashCode()) : fullString);
        }
Exemple #2
0
 public void RecordNewSystemTarget(SystemTarget target)
 {
     systemTargets.TryAdd(target.ActivationId, target);
     if (!Constants.IsSingletonSystemTarget(target.GrainId))
     {
         FindSystemTargetCounter(Constants.SystemTargetName(target.GrainId)).Increment();
     }
 }
Exemple #3
0
        public void RecordNewSystemTarget(SystemTarget target)
        {
            var systemTarget = (ISystemTargetBase)target;

            systemTargets.TryAdd(target.ActivationId, target);
            if (!Constants.IsSingletonSystemTarget(systemTarget.GrainId.Type))
            {
                FindSystemTargetCounter(Constants.SystemTargetName(systemTarget.GrainId.Type)).Increment();
            }
        }
Exemple #4
0
        public void RemoveSystemTarget(SystemTarget target)
        {
            SystemTarget ignore;

            systemTargets.TryRemove(target.ActivationId, out ignore);
            if (!Constants.IsSingletonSystemTarget(target.GrainId))
            {
                FindSystemTargetCounter(Constants.SystemTargetName(target.GrainId)).DecrementBy(1);
            }
        }
        public void RemoveSystemTarget(SystemTarget target)
        {
            var systemTarget = (ISystemTargetBase)target;

            systemTargets.TryRemove(target.ActivationId, out _);
            if (!Constants.IsSingletonSystemTarget(systemTarget.GrainId.Type))
            {
                FindSystemTargetCounter(Constants.SystemTargetName(systemTarget.GrainId.Type)).DecrementBy(1);
            }
        }