Exemplo n.º 1
0
        DataCollection ICustomDataItem.Serialize(ITypeSerializer handler)
        {
            DataCollection data = new DataCollection();

            foreach (KeyValuePair <string, object> entry in properties)
            {
                DataNode val;
                if (entry.Value == null)
                {
                    continue;
                }
                else if (entry.Value is XmlElement)
                {
                    DataItem xit = new DataItem();
                    XmlConfigurationReader sr = new XmlConfigurationReader();
                    xit.ItemData.Add(sr.Read((XmlElement)entry.Value));
                    val = xit;
                }
                else if (entry.Value is DataNode)
                {
                    val = (DataNode)entry.Value;
                }
                else
                {
                    val = handler.SerializationContext.Serializer.Serialize(entry.Value, entry.Value.GetType());
                }
                val.Name = EscapeName(entry.Key);
                data.Add(val);
            }
            return(data);
        }
        /// <summary>
        /// Reads a configuration using the specified encryption engine from the specified path
        /// </summary>
        /// <param name="encryptionEngine">The encryption engine to use while reading the configuration, null if no decryption is desired</param>
        /// <param name="configuration">The configuration to be read into</param>
        /// <param name="path">The path to be read from</param>
        /// <returns></returns>
        public static bool ReadConfiguration(FileEncryptionEngine encryptionEngine, out XmlConfiguration configuration, string path)
        {
            Stream stream = null;

            _lastException = null;

            try
            {
                configuration = new XmlConfiguration();
                stream        = (encryptionEngine != null ? encryptionEngine.CreateDecryptorStream(path) : new FileStream(path, FileMode.Open, FileAccess.Read, FileShare.None));
                XmlConfigurationReader reader = new XmlConfigurationReader();
                configuration      = reader.Read(stream);
                configuration.Path = path;
                configuration.SetHasUnpersistedChanges(false);

                return(true);
            }
            catch (Exception ex)
            {
                Log.WriteLine(ex);
                _lastException = ex;
            }
            finally
            {
                if (stream != null)
                {
                    stream.Close();
                }
            }
            configuration = null;
            return(false);
        }
Exemplo n.º 3
0
        internal static IEnumerable <ScopedPolicy> DiffDeserializeXml(System.IO.StreamReader reader)
        {
            var xr = System.Xml.XmlReader.Create(reader);
            XmlConfigurationReader configReader = XmlConfigurationReader.DefaultReader;

            while (!xr.EOF && xr.MoveToContent() != System.Xml.XmlNodeType.None)
            {
                DataNode node = configReader.Read(xr);
                if (node.Name == "PolicySet" && node is DataItem)
                {
                    foreach (DataNode child in ((DataItem)node).ItemData)
                    {
                        yield return(DiffDeserialize(child));
                    }
                }
                else
                {
                    yield return(DiffDeserialize(node));
                }
            }
        }
 public void Setup()
 {
     _sut = new XmlConfigurationReader();
 }
 public void LoadRuntimeConfigurationTest()
 {
     var objTet = new XmlConfigurationReader()
                  .LoadRuntimeConfiguration();
 }