示例#1
0
 public static OrchestrationCallbackIdentity Create(OrchestrationClassifications Classification,
                                                    string Name,
                                                    Guid Identity)
 {
     // Any validations or enrichment can happen here
     return(new OrchestrationCallbackIdentity(Classification, Name, Identity));
 }
        public void ClassificationFromString_query_TestMethod()
        {
            OrchestrationClassifications expected = OrchestrationClassifications.Query;
            OrchestrationClassifications actual   = OrchestrationClassifications.NotSet;

            actual = OrchestrationCallbackIdentity.ClassificationFromString("query");

            Assert.AreEqual(expected, actual);
        }
        public void ClassificationFromString_command_TestMethod()
        {
            OrchestrationClassifications expected = OrchestrationClassifications.Command;
            OrchestrationClassifications actual   = OrchestrationClassifications.NotSet;

            actual = OrchestrationCallbackIdentity.ClassificationFromString("command");

            Assert.AreEqual(expected, actual);
        }
        public void ClassificationFromString_Null_TestMethod()
        {
            OrchestrationClassifications expected = OrchestrationClassifications.NotSet;
            OrchestrationClassifications actual   = OrchestrationClassifications.Projection;

            actual = OrchestrationCallbackIdentity.ClassificationFromString(null);

            Assert.AreEqual(expected, actual);
        }
        public void ClassificationFromString_group_TestMethod()
        {
            OrchestrationClassifications expected = OrchestrationClassifications.IdentifierGroup;
            OrchestrationClassifications actual   = OrchestrationClassifications.NotSet;

            actual = OrchestrationCallbackIdentity.ClassificationFromString("group");

            Assert.AreEqual(expected, actual);
        }
        public void ClassificationFromString_CLASSIFIER_TestMethod()
        {
            OrchestrationClassifications expected = OrchestrationClassifications.Classifier;
            OrchestrationClassifications actual   = OrchestrationClassifications.NotSet;

            actual = OrchestrationCallbackIdentity.ClassificationFromString("CLASSIFIER");

            Assert.AreEqual(expected, actual);
        }
示例#7
0
 internal OrchestrationCallbackIdentity(
     OrchestrationClassifications Classification,
     string Name,
     Guid Identity)
 {
     _classification   = Classification;
     _instanceName     = Name;
     _instanceIdentity = Identity;
 }
        public void CreateFromPath_ValidPath_Domain_QueryType_TestMethod()
        {
            string TestPath = "Domain/Query/The-Query/{1234-1234-12345678}";

            OrchestrationClassifications expected = OrchestrationClassifications.Query;
            OrchestrationClassifications actual   = OrchestrationClassifications.NotSet;

            OrchestrationCallbackIdentity testIdentity = OrchestrationCallbackIdentity.CreateFromPath(TestPath);

            actual = testIdentity.Classification;

            Assert.AreEqual(expected, actual);
        }
示例#9
0
        /// <summary>
        /// Create a callback identity from a path
        /// </summary>
        /// <param name="callbackIdentityPath">
        /// Domain/Type/Name/Instance
        /// e.g.
        /// TheLongRun-Leagues/Command/Add-League/{1234-ABCD1-0A098A123E1F}
        /// </param>
        /// <remarks>
        /// Can be inclusive of or exclusive of the domain name - in the latter
        /// </remarks>
        public static OrchestrationCallbackIdentity CreateFromPath(string callbackIdentityPath)
        {
            if (string.IsNullOrWhiteSpace(callbackIdentityPath))
            {
                return(null);
            }

            string[] components = callbackIdentityPath.Split('/');
            string   _name      = string.Empty;
            OrchestrationClassifications _classification = OrchestrationClassifications.NotSet;
            Guid _identity = Guid.Empty;

            if (components.Length == 4)
            {
                _classification = ClassificationFromString(components[1]);
                _name           = components[2];
                Guid.TryParse(components[3], out _identity);
            }
            else
            {
                if (components.Length == 3)
                {
                    _classification = ClassificationFromString(components[0]);
                    _name           = components[1];
                    Guid.TryParse(components[2], out _identity);
                }
                else
                {
                    // Not a valid path
                    return(null);
                }
            }

            if (_classification == OrchestrationClassifications.NotSet)
            {
                return(null);
            }

            return(OrchestrationCallbackIdentity.Create(_classification,
                                                        _name,
                                                        _identity));
        }