Ejemplo n.º 1
0
        private void ProcessInvalidPartitionField(PersistentClass cls)
        {
            var error = new BSharpError {
                Class   = cls.TargetClass,
                Level   = ErrorLevel.Error,
                Message = "Поле, отмеченное к партицироанию не найдено"
            };

            Errors.Add(error);
            Context.RegisterError(error);
        }
Ejemplo n.º 2
0
        private void ProcessNullPartitionField(PersistentClass cls)
        {
            var error = new BSharpError {
                Class   = cls.TargetClass,
                Level   = ErrorLevel.Error,
                Message = "Таблица отмечена к партицированию, но поле не указано"
            };

            Errors.Add(error);
            Context.RegisterError(error);
        }
Ejemplo n.º 3
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="error"></param>
 public void RegisterError(BSharpError error)
 {
     if (error.Level >= ErrorLevel.Error)
     {
         this.IsValid = false;
     }
     Errors.Add(error);
     if (null != Context)
     {
         Context.RegisterError(error);
     }
 }
Ejemplo n.º 4
0
        private void ProcessInvalidFieldReferenceError(Field reference)
        {
            var error = new BSharpError {
                Class   = reference.Table.TargetClass,
                Level   = ErrorLevel.Error,
                Xml     = reference.Definition,
                Message =
                    "Не могу найти в модели целевого поля таблицы для поля " + reference.Name + " объекта " +
                    reference.Table.FullCodeName + " с ссылкой на " + reference.ReferenceTable + " (" + reference.ReferenceField + ")"
            };

            Errors.Add(error);
            Context.RegisterError(error);
        }
Ejemplo n.º 5
0
 private static IBSharpContext ParseContext(XElement xml) {
     var result = new BSharpContext();
     result.Working = new List<IBSharpClass>();
     foreach (var cls in xml.Elements("cls")) {
         var bcls = new BSharpClass(result);
         bcls.Set(BSharpClassAttributes.Built);
         bcls.Name = cls.Attr("name");
         bcls.Namespace = cls.Attr("ns");
         bcls.Compiled = cls.Elements().First();
         result.Working.Add(bcls);
     }
     foreach (var error in xml.Elements("error")) {
         var e = new BSharpError {Type = error.Attr("type").To<BSharpErrorType>(), Message = error.Value};
         var lexe = error.Element("lexinfo");
         if (null != lexe) {
             e.LexInfo = new LexInfo(lexe.Attr("file"), lexe.Attr("line").ToInt());
         }
         result.RegisterError(e);
     }
     result.BuildIndexes();
     return result;
 }
Ejemplo n.º 6
0
 /// <summary>
 /// </summary>
 /// <param name="error"></param>
 public void RegisterError(BSharpError error)
 {
     Errors.Add(error);
     Context.RegisterError(error);
 }
	    /// <summary>
        ///     Возвращает серилизованную строку из массива ошибок BSharpError
        /// </summary>
        /// <param name="errors">Массив ошибок</param>
        /// <returns>Серилизованная строка</returns>
        private string GetSerializedErrors(BSharpError[] errors) {
            return new XmlSerializer().Serialize("errors", errors);
        }
Ejemplo n.º 8
0
		private void ProcessInvalidFieldReferenceError(Field reference){
			var error = new BSharpError{
				Class = reference.Table.TargetClass,
				Level = ErrorLevel.Error,
				Xml = reference.Definition,
				Message =
					"Не могу найти в модели целевого поля таблицы для поля " + reference.Name + " объекта " +
					reference.Table.FullCodeName + " с ссылкой на " + reference.ReferenceTable + " (" + reference.ReferenceField + ")"
			};
			Errors.Add(error);
			Context.RegisterError(error);
		}
Ejemplo n.º 9
0
		private void ProcessInvalidPartitionField(PersistentClass cls){
			var error = new BSharpError{
				Class = cls.TargetClass,
				Level = ErrorLevel.Error,
				Message = "Поле, отмеченное к партицироанию не найдено"
			};
			Errors.Add(error);
			Context.RegisterError(error);
		}
Ejemplo n.º 10
0
		private void ProcessNullPartitionField(PersistentClass cls){
			var error = new BSharpError{
				Class = cls.TargetClass,
				Level = ErrorLevel.Error,
				Message = "Таблица отмечена к партицированию, но поле не указано"
			};
			Errors.Add(error);
			Context.RegisterError(error);
		}
Ejemplo n.º 11
0
		/// <summary>
		/// </summary>
		/// <param name="error"></param>
		public void RegisterError(BSharpError error){
			Errors.Add(error);
			Context.RegisterError(error);
		}