Beispiel #1
0
 static AnyType()
 {
     try
     {
         _datatypeFactory = DatatypeFactory.newInstance();
     }
     catch (DatatypeConfigurationException e)
     {
         throw new Exception("Cannot initialize XML datatypes", e);
     }
 }
Beispiel #2
0
 static DynamicContextBuilder()
 {
     try
     {
         _datatypeFactory = DatatypeFactory.newInstance();
     }
     catch (DatatypeConfigurationException e)
     {
         throw new Exception("Cannot initialize XML datatypes", e);
     }
 }
Beispiel #3
0
        //Converts potential sequences into item lists, while flattening to a single dimension
        private static IEnumerable <Item> GetItems(object obj)
        {
            //It it a Node?
            Node.Node node = obj as Node.Node;
            if (node != null)
            {
                return(new[] { node.ANode });
            }

            //Is it a Database?
            Database database = obj as Database;

            if (database != null)
            {
                return(database.Documents.Select(d => d.ANode).Cast <Item>());
            }

            //Is it enumerable (list, array, etc. - but not a string!)
            //This is recursive and results in flattening any nested sequences
            IEnumerable enumerable = obj as IEnumerable;

            if (!(obj is string) && enumerable != null)
            {
                return(enumerable.Cast <object>().Select(GetItems).SelectMany(x => x));
            }

            // Clean up non-.NET values
            if (obj is Decimal)
            {
                obj = new BigDecimal(obj.ToString());
            }
            else if (obj is DateTime)
            {
                obj = DatatypeFactory.newInstance().newXMLGregorianCalendar(
                    ((DateTime)obj).ToString("yyyy-MM-ddTHH:mm:ss.fffffffZ"));
            }
            else if (obj is TimeSpan)
            {
                obj = DatatypeFactory.newInstance().newDuration(
                    Convert.ToInt64(((TimeSpan)obj).TotalMilliseconds));
            }
            else if (obj is XmlQualifiedName)
            {
                XmlQualifiedName qname = (XmlQualifiedName)obj;
                obj = new QName(qname.Namespace, qname.Name);
            }

            //Get the item
            return(new [] { JavaMapping.type(obj).cast(obj, null) });
        }
Beispiel #4
0
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in .NET:
//ORIGINAL LINE: public DurationHelper(String expressions, java.util.Date startDate) throws Exception
        public DurationHelper(string expressions, DateTime startDate)
        {
            IList <string> expression = new List <string>();

            if (!string.ReferenceEquals(expressions, null))
            {
                expression = Arrays.asList(expressions.Split("/", true));
            }
            datatypeFactory = DatatypeFactory.newInstance();

            if (expression.Count > 3 || expression.Count == 0)
            {
                throw LOG.cannotParseDuration(expressions);
            }
            if (expression[0].StartsWith("R", StringComparison.Ordinal))
            {
                isRepeat   = true;
                times      = expression[0].Length == 1 ? int.MaxValue : int.Parse(expression[0].Substring(1));
                expression = expression.subList(1, expression.Count);
            }

            if (isDuration(expression[0]))
            {
                period = parsePeriod(expression[0]);
                end    = expression.Count == 1 ? null : DateTimeUtil.parseDate(expression[1]);
            }
            else
            {
                start = DateTimeUtil.parseDate(expression[0]);
                if (isDuration(expression[1]))
                {
                    period = parsePeriod(expression[1]);
                }
                else
                {
                    end    = DateTimeUtil.parseDate(expression[1]);
                    period = datatypeFactory.newDuration(end.Ticks - start.Ticks);
                }
            }
            if (start == null && end == null)
            {
                start = startDate == null ? ClockUtil.CurrentTime : startDate;
            }
        }
Beispiel #5
0
        public void autorizarComprobante(String claveAcceso)
        {
            sriAutorizacion.AutorizacionComprobantesOfflineService servicio = new sriAutorizacion.AutorizacionComprobantesOfflineService();
            object[] resAutorizacion = null;
            try
            {
                resAutorizacion = servicio.autorizacionComprobante(claveAcceso);
            }
            catch (Exception ex)
            {
                return;
            }
            this.respuestaAutorizacion.setClaveAccesoConsultada((((System.Xml.XmlNode[])(((object[])(resAutorizacion[0]))[0]))[0]).InnerText);
            this.respuestaAutorizacion.setNumeroComprobantes((((System.Xml.XmlNode[])(((object[])(resAutorizacion[0]))[0]))[1]).InnerText);
            Autorizaciones autorizaciones = new Autorizaciones();;
            Autorizacion   autorizacion   = new Autorizacion();
            XmlNode        nodoAutorizaciones;

            if (((System.Xml.XmlNode[])(((object[])(resAutorizacion[0]))[0])).Length <= 2)
            {
                nodoAutorizaciones = (((System.Xml.XmlNode[])(((object[])(resAutorizacion[0]))[0]))[1]);
            }
            else
            {
                nodoAutorizaciones = (((System.Xml.XmlNode[])(((object[])(resAutorizacion[0]))[0]))[2]);
            }

            foreach (XmlNode nodo in nodoAutorizaciones.SelectNodes("/autorizaciones"))
            {
                autorizacion = new Autorizacion();
                if (nodo.InnerText.Equals("EN PROCESO"))
                {
                    autorizacion.setComprobante(null);
                    autorizacion.setEstado(nodo["autorizacion"]["estado"].InnerText);
                    autorizacion.setNumeroAutorizacion(nodo["autorizacion"]["numeroAutorizacion"].InnerText);
                    Autorizacion.Mensajes msjs = new Autorizacion.Mensajes();
                    foreach (XmlNode nodoMensajes in nodo["autorizacion"]["mensajes"])
                    {
                        Mensaje mensaje = new Mensaje();
                        mensaje.setIdentificador(nodoMensajes["identificador"].InnerText);
                        mensaje.setMensaje(nodoMensajes["mensaje"].InnerText);
                        mensaje.setTipo(nodoMensajes["tipo"].InnerText);
                        msjs.getMensaje().Add(mensaje);
                        autorizacion.setMensajes(msjs);
                    }
                }
                else
                {
                    java.text.DateFormat format = new java.text.SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
                    Date date             = format.parse(nodo["autorizacion"]["fechaAutorizacion"].InnerText);
                    GregorianCalendar cal = new GregorianCalendar();
                    cal.setTime(date);
                    XMLGregorianCalendar xmlGregCal = DatatypeFactory.newInstance().newXMLGregorianCalendar(cal);
                    autorizacion.setComprobante(nodo["autorizacion"]["comprobante"].InnerText);
                    autorizacion.setEstado(nodo["autorizacion"]["estado"].InnerText);
                    autorizacion.setFechaAutorizacion(xmlGregCal);
                    autorizacion.setNumeroAutorizacion(nodo["autorizacion"]["numeroAutorizacion"].InnerText);
                    Autorizacion.Mensajes msjs = new Autorizacion.Mensajes();
                    foreach (XmlNode nodoMensajes in nodo["autorizacion"]["mensajes"])
                    {
                        Mensaje mensaje = new Mensaje();
                        mensaje.setIdentificador(nodoMensajes["identificador"].InnerText);
                        mensaje.setMensaje(nodoMensajes["mensaje"].InnerText);
                        mensaje.setTipo(nodoMensajes["tipo"].InnerText);
                        msjs.getMensaje().Add(mensaje);
                        autorizacion.setMensajes(msjs);
                    }
                    autorizaciones.getAutorizacion().Add(autorizacion);
                }
            }
            this.respuestaAutorizacion.setAutorizaciones(autorizaciones);
        }