Inheritance: AbstractSerializer
Exemplo n.º 1
0
        internal static ISerializer GetSerializer(bool? compress, bool? security) {
            ISerializer result = new CloneSerializer();

            if(compress.GetValueOrDefault(false))
                result = new CompressSerializer(result);

            if(security.GetValueOrDefault(false))
                result = new EncryptSerializer(result);

            return result;
        }
Exemplo n.º 2
0
        /// <summary>
        /// 원하는 <see cref="ISerializer"/>를 빌드합니다.
        /// </summary>
        /// <param name="compress">압축할 것인가?</param>
        /// <param name="security">보안을 적용할 것인가?</param>
        /// <returns></returns>
        public static ISerializer GetSerializer(bool compress, bool security) {
            if(IsDebugEnabled)
                log.Debug("Create Serializer. compress=[{0}], security=[{1}]", compress, security);

            // ISerializer serializer = new BinarySerializer();
            ISerializer serializer = new CloneSerializer();

            if(compress)
                serializer = new CompressSerializer(serializer);

            if(security)
                serializer = new EncryptSerializer(serializer);

            return serializer;
        }