Exemplo n.º 1
0
        internal AdministradorInstance Create_instanceServ(ONInt p_atrid_AdministradorArg, ONString p_passwordArg)
        {
            if (Instance != null)
            {
                ONFilterList onfilt = new ONFilterList();
                onfilt.Add("QueryByOid", new QueryByOidFilter(Instance.Oid));
                Instance.Find(onfilt);
            }
            // Execute service
            AdministradorAction lAction = new AdministradorAction(OnContext);

            lAction.Instance = new AdministradorInstance(OnContext);
            Instance         = lAction.Create_instanceServ(p_atrid_AdministradorArg, p_passwordArg);

            OnContext.OperationStack.Pop();
            OnContext.OperationStack.Push(Instance);

            return(Instance);
        }
Exemplo n.º 2
0
        internal RevisionInstance Create_instanceServ(ONInt p_atrid_RevisarAeronaveArg, ONDate p_atrFechaRevisionArg, ONString p_atrNombreRevisorArg, ONString p_atrId_AeronaveArg)
        {
            if (Instance != null)
            {
                ONFilterList onfilt = new ONFilterList();
                onfilt.Add("QueryByOid", new QueryByOidFilter(Instance.Oid));
                Instance.Find(onfilt);
            }
            // Execute service
            RevisionAction lAction = new RevisionAction(OnContext);

            lAction.Instance = new RevisionInstance(OnContext);
            Instance         = lAction.Create_instanceServ(p_atrid_RevisarAeronaveArg, p_atrFechaRevisionArg, p_atrNombreRevisorArg, p_atrId_AeronaveArg);

            OnContext.OperationStack.Pop();
            OnContext.OperationStack.Push(Instance);

            return(Instance);
        }
Exemplo n.º 3
0
 public void CheckSTDiagram_create_instance(ONInt p_atrid_AdministradorArg, ONString p_passwordArg)
 {
     Instance.StateObj = new ONString("Admini0");
 }
Exemplo n.º 4
0
 public void CheckSTDiagram_create_instance(ONInt p_atrid_NaveNodrizaArg, ONString p_atrNombre_NaveNodrizaArg)
 {
     Instance.StateObj = new ONString("NaveNo0");
 }
        internal PasajeroAeronaveInstance Create_instanceServ(AeronaveOid p_agrAeronaveArg, PasajeroOid p_agrPasajeroArg, ONInt p_atrid_PasajeroAeronaveArg, ONString p_atrNombreAeronaveArg, ONString p_atrNombrePasajeroArg)
        {
            if (Instance != null)
            {
                ONFilterList onfilt = new ONFilterList();
                onfilt.Add("QueryByOid", new QueryByOidFilter(Instance.Oid));
                Instance.Find(onfilt);
            }
            // Execute service
            PasajeroAeronaveAction lAction = new PasajeroAeronaveAction(OnContext);

            lAction.Instance = new PasajeroAeronaveInstance(OnContext);
            Instance         = lAction.Create_instanceServ(p_agrAeronaveArg, p_agrPasajeroArg, p_atrid_PasajeroAeronaveArg, p_atrNombreAeronaveArg, p_atrNombrePasajeroArg);

            OnContext.OperationStack.Pop();
            OnContext.OperationStack.Push(Instance);

            return(Instance);
        }
        public PasajeroAeronaveInstance Create_instanceServ(AeronaveOid p_agrAeronaveArg, PasajeroOid p_agrPasajeroArg, ONInt p_atrid_PasajeroAeronaveArg, ONString p_atrNombreAeronaveArg, ONString p_atrNombrePasajeroArg)
        {
            // Create new context
            using (ONServiceContext lOnContext = new ONServiceContext(OnContext))
            {
                // Call Executive
                PasajeroAeronaveExecutive lExecutive = new PasajeroAeronaveExecutive();
                lExecutive.OnContext = lOnContext;
                lExecutive.Instance  = Instance;
                Instance             = lExecutive.Create_instanceServ(p_agrAeronaveArg, p_agrPasajeroArg, p_atrid_PasajeroAeronaveArg, p_atrNombreAeronaveArg, p_atrNombrePasajeroArg);
            }

            return(Instance);
        }
        public PasajeroAeronaveInstance Create_instanceServ(
            [ONInboundArgument("Clas_1348178542592177Ser_1Arg_5_Alias", PasajeroAeronaveClassText.Create_instance_P_agrAeronaveArgumentAlias, "", "Clas_1348178542592177Ser_1_Alias", PasajeroAeronaveClassText.Create_instanceServiceAlias, "Clas_1348178542592177_Alias", PasajeroAeronaveClassText.ClassAlias, AllowsNull = true)] AeronaveOid p_agrAeronaveArg,
            [ONInboundArgument("Clas_1348178542592177Ser_1Arg_6_Alias", PasajeroAeronaveClassText.Create_instance_P_agrPasajeroArgumentAlias, "", "Clas_1348178542592177Ser_1_Alias", PasajeroAeronaveClassText.Create_instanceServiceAlias, "Clas_1348178542592177_Alias", PasajeroAeronaveClassText.ClassAlias, AllowsNull = true)] PasajeroOid p_agrPasajeroArg,
            [ONInboundArgument("Clas_1348178542592177Ser_1Arg_1_Alias", PasajeroAeronaveClassText.Create_instance_P_atrid_PasajeroAeronaveArgumentAlias, "autonumeric", "Clas_1348178542592177Ser_1_Alias", PasajeroAeronaveClassText.Create_instanceServiceAlias, "Clas_1348178542592177_Alias", PasajeroAeronaveClassText.ClassAlias, AllowsNull = false)] ONInt p_atrid_PasajeroAeronaveArg,
            [ONInboundArgument("Clas_1348178542592177Ser_1Arg_8_Alias", PasajeroAeronaveClassText.Create_instance_P_atrNombreAeronaveArgumentAlias, "string", "Clas_1348178542592177Ser_1_Alias", PasajeroAeronaveClassText.Create_instanceServiceAlias, "Clas_1348178542592177_Alias", PasajeroAeronaveClassText.ClassAlias, Length = 100, AllowsNull = false)] ONString p_atrNombreAeronaveArg,
            [ONInboundArgument("Clas_1348178542592177Ser_1Arg_9_Alias", PasajeroAeronaveClassText.Create_instance_P_atrNombrePasajeroArgumentAlias, "string", "Clas_1348178542592177Ser_1_Alias", PasajeroAeronaveClassText.Create_instanceServiceAlias, "Clas_1348178542592177_Alias", PasajeroAeronaveClassText.ClassAlias, Length = 100, AllowsNull = false)] ONString p_atrNombrePasajeroArg)
        {
            try
            {
                PasajeroAeronaveData lData = new PasajeroAeronaveData(OnContext);

                #region Construct OID
                Instance.Oid = new PasajeroAeronaveOid();
                Instance.Oid.Id_PasajeroAeronaveAttr = new ONInt(p_atrid_PasajeroAeronaveArg);
                #endregion Construct OID

                #region Argument initialization 'p_atrNombreAeronave' (NombreAeronave)
                Instance.NombreAeronaveAttr = new ONString(p_atrNombreAeronaveArg);
                #endregion Argument initialization 'p_atrNombreAeronave' (NombreAeronave)

                #region Argument initialization 'p_atrNombrePasajero' (NombrePasajero)
                Instance.NombrePasajeroAttr = new ONString(p_atrNombrePasajeroArg);
                #endregion Argument initialization 'p_atrNombrePasajero' (NombrePasajero)

                #region Argument initialization 'p_agrAeronave' (Aeronave)
                if (p_agrAeronaveArg != null)
                {
                    AeronaveData lAeronaveData = new AeronaveData(OnContext);
                    if (!lAeronaveData.Exist(p_agrAeronaveArg, null))
                    {
                        throw new ONInstanceNotExistException(null, "Clas_1348178411520734_Alias", AeronaveClassText.ClassAlias);
                    }

                    Instance.AeronaveRole        = null;
                    Instance.AeronaveRoleOidTemp = p_agrAeronaveArg;

                    // Maximum cardinality check (inverse role)
                    if (p_agrAeronaveArg.GetInstance(OnContext).PasajeroAeronaveRole.Count >= 1)
                    {
                        throw new ONMaxCardinalityException(null, AeronaveClassText.ClassAlias, "Clas_1348178411520734_Alias", AeronaveClassText.PasajeroAeronaveRoleAlias, "Agr_1348602167296130Rol_1_Alias", 1);
                    }
                }
                #endregion Argument Initialization 'p_agrAeronave' (Aeronave)

                #region Argument initialization 'p_agrPasajero' (Pasajero)
                if (p_agrPasajeroArg != null)
                {
                    PasajeroData lPasajeroData = new PasajeroData(OnContext);
                    if (!lPasajeroData.Exist(p_agrPasajeroArg, null))
                    {
                        throw new ONInstanceNotExistException(null, "Clas_1348178542592658_Alias", PasajeroClassText.ClassAlias);
                    }

                    Instance.PasajeroRole        = null;
                    Instance.PasajeroRoleOidTemp = p_agrPasajeroArg;

                    // Maximum cardinality check (inverse role)
                    if (p_agrPasajeroArg.GetInstance(OnContext).PasajeroAeronaveRole.Count >= 1)
                    {
                        throw new ONMaxCardinalityException(null, PasajeroClassText.ClassAlias, "Clas_1348178542592658_Alias", PasajeroClassText.PasajeroAeronaveRoleAlias, "Agr_1348602429440718Rol_1_Alias", 1);
                    }
                }
                #endregion Argument Initialization 'p_agrPasajero' (Pasajero)

                #region Autonumeric attribute 'id_PasajeroAeronave'
                if (Instance.Id_PasajeroAeronaveAttr < new ONInt(0))
                {
                    PasajeroAeronaveData lAutonumericData = new PasajeroAeronaveData(OnContext);
                    lAutonumericData.ClassName = "PasajeroAeronave";
                    //Get Autonumeric
                    Instance.Oid.Id_PasajeroAeronaveAttr = lAutonumericData.GetAutonumericid_PasajeroAeronave();
                }
                #endregion Autonumeric attribute 'id_PasajeroAeronave'

                //Search if instance exists
                if (lData.Exist(Instance.Oid, null))
                {
                    throw new ONInstanceExistException(null, "Clas_1348178542592177_Alias", PasajeroAeronaveClassText.ClassAlias);
                }

                //Update the new instance
                lData.UpdateAdded(Instance);

                #region Cardinality check for role 'Aeronave'
                // Maximum cardinality check (inverse)
                foreach (AeronaveInstance lRelatedInstance in Instance.AeronaveRole)
                {
                    if (lRelatedInstance.PasajeroAeronaveRole.Count > 1)
                    {
                        throw new ONMaxCardinalityException(null, AeronaveClassText.ClassAlias, "Clas_1348178411520734_Alias", AeronaveClassText.PasajeroAeronaveRoleAlias, "Agr_1348602167296130Rol_1_Alias", 1);
                    }
                }
                #endregion Cardinality check for role 'Aeronave'

                #region Cardinality check for role 'Pasajero'
                // Maximum cardinality check (inverse)
                foreach (PasajeroInstance lRelatedInstance in Instance.PasajeroRole)
                {
                    if (lRelatedInstance.PasajeroAeronaveRole.Count > 1)
                    {
                        throw new ONMaxCardinalityException(null, PasajeroClassText.ClassAlias, "Clas_1348178542592658_Alias", PasajeroClassText.PasajeroAeronaveRoleAlias, "Agr_1348602429440718Rol_1_Alias", 1);
                    }
                }
                #endregion Cardinality check for role 'Pasajero'
            }
            catch (Exception e)
            {
                if (e is ONException)
                {
                    throw e;
                }
                else
                {
                    string ltraceItem = "Definition class: PasajeroAeronave, Service: create_instance, Component: PasajeroAeronaveAction, Method: Create_instanceServ";
                    if (e is ONSystemException)
                    {
                        ONSystemException lException = e as ONSystemException;
                        lException.addTraceInformation(ltraceItem);
                        throw lException;
                    }
                    throw new ONSystemException(e, ltraceItem);
                }
            }

            return(Instance);
        }
 public void CheckSTDiagram_create_instance(AeronaveOid p_agrAeronaveArg, PasajeroOid p_agrPasajeroArg, ONInt p_atrid_PasajeroAeronaveArg, ONString p_atrNombreAeronaveArg, ONString p_atrNombrePasajeroArg)
 {
     Instance.StateObj = new ONString("Pasaje0");
 }
Exemplo n.º 9
0
        public AdministradorInstance Create_instanceServ(ONInt p_atrid_AdministradorArg, ONString p_passwordArg)
        {
            // Create new context
            using (ONServiceContext lOnContext = new ONServiceContext(OnContext))
            {
                // Call Executive
                AdministradorExecutive lExecutive = new AdministradorExecutive();
                lExecutive.OnContext = lOnContext;
                lExecutive.Instance  = Instance;
                Instance             = lExecutive.Create_instanceServ(p_atrid_AdministradorArg, p_passwordArg);
            }

            return(Instance);
        }
Exemplo n.º 10
0
        public void XML2ON(XmlReader xmlReader, double dtdVersion, bool checkMissingArguments)
        {
            string XMLTAG = "";

            // Check the elements arguments of the request
            try
            {
                if ((!xmlReader.IsStartElement(ONXml.XMLTAG_ARGUMENTS)) && (!xmlReader.IsStartElement(ONXml.XMLTAG_FILTERVARIABLES)))
                {
                    throw new ONXMLNavFilterException(null, xmlReader.ToString(), ONXml.XMLTAG_ARGUMENTS, ONXml.XMLTAG_FILTERVARIABLES);
                }
            }
            catch
            {
                throw new ONXMLNavFilterException(null, xmlReader.ToString(), ONXml.XMLTAG_ARGUMENTS, ONXml.XMLTAG_FILTERVARIABLES);
            }

            if (xmlReader.IsEmptyElement)             // Service dont have arguments
            {
                xmlReader.ReadElementString();
                return;
            }

            if (xmlReader.IsStartElement(ONXml.XMLTAG_ARGUMENTS))
            {
                xmlReader.ReadStartElement(ONXml.XMLTAG_ARGUMENTS);
                XMLTAG = ONXml.XMLTAG_ARGUMENT;
            }
            else if (xmlReader.IsStartElement(ONXml.XMLTAG_FILTERVARIABLES))
            {
                xmlReader.ReadStartElement(ONXml.XMLTAG_FILTERVARIABLES);
                XMLTAG = ONXml.XMLTAG_FILTERVARIABLE;
            }

            // While there are arguments to solve ...
            string lName;

            while (xmlReader.IsStartElement(XMLTAG))
            {
                string lXmlType;
                try
                {
                    if (dtdVersion <= 2.0)
                    {
                        lName = xmlReader.GetAttribute(ONXml.XMLATT_NAME_DTD20);
                    }
                    else
                    {
                        lName = xmlReader.GetAttribute(ONXml.XMLATT_NAME);
                    }

                    lXmlType = xmlReader.GetAttribute(ONXml.XMLATT_TYPE);

                    if ((mIdClass == "") && (mIdService == ""))
                    {
                        string             lClass = "";
                        DataTypeEnumerator lType  = new DataTypeEnumerator();
                        if (string.Compare(lXmlType, "autonumeric", true) == 0)
                        {
                            lType = DataTypeEnumerator.Autonumeric;
                        }
                        else if (string.Compare(lXmlType, "int", true) == 0)
                        {
                            lType = DataTypeEnumerator.Int;
                        }
                        else if (string.Compare(lXmlType, "bool", true) == 0)
                        {
                            lType = DataTypeEnumerator.Bool;
                        }
                        else if (string.Compare(lXmlType, "blob", true) == 0)
                        {
                            lType = DataTypeEnumerator.Blob;
                        }
                        else if (string.Compare(lXmlType, "date", true) == 0)
                        {
                            lType = DataTypeEnumerator.Date;
                        }
                        else if (string.Compare(lXmlType, "datetime", true) == 0)
                        {
                            lType = DataTypeEnumerator.DateTime;
                        }
                        else if (string.Compare(lXmlType, "nat", true) == 0)
                        {
                            lType = DataTypeEnumerator.Nat;
                        }
                        else if (string.Compare(lXmlType, "real", true) == 0)
                        {
                            lType = DataTypeEnumerator.Real;
                        }
                        else if (string.Compare(lXmlType, "password", true) == 0)
                        {
                            lType = DataTypeEnumerator.Password;
                        }
                        else if (string.Compare(lXmlType, "string", true) == 0)
                        {
                            lType = DataTypeEnumerator.String;
                        }
                        else if (string.Compare(lXmlType, "text", true) == 0)
                        {
                            lType = DataTypeEnumerator.Text;
                        }
                        else if (string.Compare(lXmlType, "time", true) == 0)
                        {
                            lType = DataTypeEnumerator.Time;
                        }
                        else
                        {
                            lType = DataTypeEnumerator.OID;
                        }

                        xmlReader.ReadStartElement(XMLTAG);
                        if (lType == DataTypeEnumerator.OID)
                        {
                            lClass = xmlReader.GetAttribute("Class");
                        }

                        mArgumentList.Add(lName, new ONArgumentInfo(lName, true, lType, 1000, lClass, "", ""));
                    }
                    else
                    {
                        xmlReader.ReadStartElement(XMLTAG);
                    }
                }
                catch (Exception e)
                {
                    throw new ONXMLStructureException(e, ONXml.XMLATT_NAME);
                }

                try
                {
                    ReadArgument(xmlReader, dtdVersion, lName, lXmlType);
                }
                catch (Exception e)
                {
                    if (e.GetType() == typeof(ONInstanceNotExistException))
                    {
                        throw;
                    }
                    else
                    {
                        throw new ONArgumentException(e, lName);
                    }
                }
                xmlReader.ReadEndElement();                 // Argument
            }

            xmlReader.ReadEndElement();             // Arguments

            // Check the change detection items of the request
            if (xmlReader.IsStartElement(ONXml.XMLTAG_CHANGEDETECTIONITEMS))
            {
                if (xmlReader.IsEmptyElement)                 // Service dont have change detection items
                {
                    xmlReader.ReadElementString();
                    return;
                }

                if (xmlReader.IsStartElement(ONXml.XMLTAG_CHANGEDETECTIONITEMS))
                {
                    xmlReader.ReadStartElement(ONXml.XMLTAG_CHANGEDETECTIONITEMS);
                    XMLTAG = ONXml.XMLTAG_CHANGEDETECTIONITEM;
                }

                // While there are change detection items to solve ...
                while (xmlReader.IsStartElement(XMLTAG))
                {
                    try
                    {
                        lName = xmlReader.GetAttribute(ONXml.XMLATT_NAME);
                        xmlReader.ReadStartElement(XMLTAG);
                    }
                    catch (Exception e)
                    {
                        throw new ONXMLStructureException(e, ONXml.XMLATT_NAME);
                    }

                    try
                    {
                        ReadChangeDetectionItem(xmlReader, dtdVersion, lName);
                    }
                    catch (Exception e)
                    {
                        throw new ONArgumentException(e, lName);
                    }
                    xmlReader.ReadEndElement();                     // ChangeDetectionItem
                }

                xmlReader.ReadEndElement();                 // ChangeDetectionItems
            }

            // Comprobations over the arguments
            foreach (DictionaryEntry lElem in mArgumentList)
            {
                ONArgumentInfo lArg = (ONArgumentInfo)lElem.Value;

                // Check if it is all the arguments
                if (lArg.Value == null)
                {
                    if (checkMissingArguments)
                    {
                        throw new ONMissingArgumentException(null, lArg.IdArgument, lArg.Alias);
                    }
                    else
                    {
                        continue;
                    }
                }

                if (lArg.Value.Value == null && lArg.Null == false)
                {
                    throw new ONNotNullArgumentException(null, mIdService, mIdClass, lArg.IdArgument, mAlias, mClassAlias, lArg.Alias);
                }

                if (lArg.MaxLength > 0)
                {
                    ONString lString = lArg.Value as ONString;
                    //MARTA DEFECT 3766
                    //ONText lText = lArg.Value as ONText;
                    if (((object)lString != null) && (lString.TypedValue != null) && (lString.TypedValue.Length > lArg.MaxLength))
                    {
                        throw new ONMaxLenghtArgumentException(null, lArg.IdArgument, lArg.Alias, lArg.MaxLength.ToString());
                    }
                    //MARTA DEFECT 3766
                    //if (((object) lText != null) && (lText.TypedValue != null) && (lText.TypedValue.Length > lArg.MaxLength))
                    //	throw new ONMaxLenghtArgumentException(null, lArg.IdArgument, lArg.Alias, lArg.MaxLength.ToString());
                }
            }
        }
Exemplo n.º 11
0
        public void XML2ONFilterVariables(XmlReader xmlReader, double dtdVersion)
        {
            // Check the filter variables of the request
            try
            {
                if (!xmlReader.IsStartElement(ONXml.XMLTAG_FILTERVARIABLES))
                {
                    throw new ONXMLStructureException(null, ONXml.XMLTAG_FILTERVARIABLES);
                }
            }
            catch
            {
                throw new ONXMLStructureException(null, ONXml.XMLTAG_FILTERVARIABLES);
            }

            if (xmlReader.IsEmptyElement)             // Filter dont have Variables
            {
                xmlReader.ReadElementString();
                return;
            }

            xmlReader.ReadStartElement(ONXml.XMLTAG_FILTERVARIABLES);

            // While there are filters to solve ...
            string lName;

            while (xmlReader.IsStartElement(ONXml.XMLTAG_FILTERVARIABLE))
            {
                lName = xmlReader.GetAttribute(ONXml.XMLATT_NAME);
                string lType = xmlReader.GetAttribute(ONXml.XMLATT_TYPE);
                xmlReader.ReadStartElement(ONXml.XMLTAG_FILTERVARIABLE);

                try
                {
                    ReadArgument(xmlReader, dtdVersion, lName, lType);
                }
                catch (Exception e)
                {
                    throw new ONArgumentException(e, lName);
                }
                xmlReader.ReadEndElement();                 // Filter.Variable
            }

            xmlReader.ReadEndElement();             // Filter.Variables

            // Comprobations over the filters
            foreach (DictionaryEntry lElem in mArgumentList)
            {
                ONArgumentInfo lArg = (ONArgumentInfo)lElem.Value;

                // Check if it is all the filters
                if (lArg.Value == null)
                {
                    throw new ONMissingArgumentException(null, lArg.IdArgument, lArg.Alias);
                }

                if (lArg.Value.Value == null && lArg.Null == false)
                {
                    throw new ONNotNullArgumentException(null, mIdService, mIdClass, lArg.IdArgument, mAlias, mClassAlias, lArg.Alias);
                }

                if (lArg.MaxLength > 0)
                {
                    ONString lString = lArg.Value as ONString;
                    //MARTA DEFECT 3766
                    //ONText lText = lArg.Value as ONText;
                    if (((object)lString != null) && (lString.TypedValue != null) && (lString.TypedValue.Length > lArg.MaxLength))
                    {
                        throw new ONMaxLenghtArgumentException(null, lArg.IdArgument, lArg.Alias, lArg.MaxLength.ToString());
                    }
                    //MARTA DEFECT 3766
                    //if (((object) lText != null) && (lText.TypedValue != null) && (lText.TypedValue.Length > lArg.MaxLength))
                    //	throw new ONMaxLenghtArgumentException(null, lArg.IdArgument, lArg.Alias, lArg.MaxLength.ToString());
                }
            }
        }