Exemple #1
0
        private void LoadSettingsFromUnreliableTransportSettingsFile(string filePath)
        {
            if (File.Exists(filePath) == true)
            {
                try
                {
                    using (FileStream fileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.Read))
                    {
                        using (StreamReader file = new StreamReader(fileStream))
                        {
                            string specificationString;

                            while ((specificationString = file.ReadLine()) != null)
                            {
                                UnreliableTransportSpecification specification = new UnreliableTransportSpecification();
                                if (Constants.ErrorCode_Success == ParseSpecificationFromINI(specificationString, ref specification))
                                {
                                    Specification.Add(specification);
                                }
                                else
                                {
                                    DeployerTrace.WriteWarning("Skipping malformed line in UnreliableTransportSettings File, value = [{0}]", specificationString);
                                }
                            }
                        }
                    }
                }
                catch (Exception e)
                {
                    DeployerTrace.WriteError("Unable to read Unreliable Settings file because {0}", e);
                    throw;
                }
            }
        }
Exemple #2
0
        private int ParseSpecificationFromClusterSettings(string name, string value, ref UnreliableTransportSpecification specification)
        {
            // behavior name
            specification.Name          = name;
            specification.Specification = value;

            return(Constants.ErrorCode_Success);
        }
Exemple #3
0
        private int ParseSpecificationFromINI(string specificationLine, ref UnreliableTransportSpecification specification)
        {
            string[] specificationSplit = specificationLine.Split('=');

            // check whether specification is malformed
            if (specificationSplit.Length > 0)
            {
                // behavior name (separated from remaining properties by '=')
                specification.Name = specificationSplit[0];
            }
            else
            {
                return(Constants.ErrorCode_Success);
            }

            specification.Specification = (specificationSplit.Length > 1) ? specificationSplit[1] : "";

            return(Constants.ErrorCode_Failure);
        }
Exemple #4
0
 private void LoadSettingsFromClusterSettings(ClusterSettings clusterSettings)
 {
     foreach (var setting in clusterSettings.Settings)
     {
         if (setting.Name == FabricValidatorConstants.SectionNames.UnreliableTransport)
         {
             foreach (var parameter in setting.Parameter)
             {
                 UnreliableTransportSpecification specification = new UnreliableTransportSpecification();
                 if (!parameter.Name.Contains('=') && ParseSpecificationFromClusterSettings(parameter.Name, parameter.Value, ref specification) != Constants.ErrorCode_Failure)
                 {
                     Specification.Add(specification);
                 }
                 else
                 {
                     DeployerTrace.WriteWarning("Skipping malformed UnreliableTransport line in ClusterManifest File, value = [name = {0} value = {1}]", parameter.Name, parameter.Value);
                 }
             }
         }
     }
 }