예제 #1
0
        /// <summary>
        /// Determines whether [is OSA print supported].
        /// </summary>
        /// <returns>
        ///     <c>true</c> if [is OSA print supported]; otherwise, <c>false</c>.
        /// </returns>
        private bool IsOSAPrintSupported()
        {
            bool create = CreateWS();
            bool isOSAPrintSupported = false;

            if (create)
            {
                try
                {
                    XML_DOC_DSC_TYPE  xmlDoc = new XML_DOC_DSC_TYPE();
                    ARG_SETTABLE_TYPE arg    = new ARG_SETTABLE_TYPE();
                    arg.Item = (E_MFP_JOB_TYPE)E_MFP_JOB_TYPE.PRINT;
                    xmlDoc   = mfpWebService.GetJobSettableElements(arg, ref OsaDirectManager.Core.g_WSDLGeneric);
                    if (xmlDoc != null && xmlDoc.complex[0].property != null)
                    {
                        isOSAPrintSupported = true;
                    }
                }
                catch (Exception)
                {
                    isOSAPrintSupported = false;
                }
            }

            return(isOSAPrintSupported);
        }
예제 #2
0
        public static bool DSC_IsAllowableValue(XML_DOC_DSC_TYPE xmlDocDsc, string path, string val)
        {
            LinkedList <string> nameList = new LinkedList <string>();

            foreach (string name in path.Split('/'))
            {
                nameList.AddLast(name);
            }

            return(DSC_IsAllowableValue(xmlDocDsc.complex[0], nameList, val));
        }
예제 #3
0
        public static XML_DOC_SET_TYPE DSC_ConvertToSettable(XML_DOC_DSC_TYPE xmlDocDsc)
        {
            XML_DOC_SET_TYPE xmlDocSet = new XML_DOC_SET_TYPE();

            xmlDocSet.property = null;

            COMPLEX_DSC_TYPE[] subComps = xmlDocDsc.complex;
            COMPLEX_SET_TYPE[] tmpComps = new COMPLEX_SET_TYPE[1];
            tmpComps[0] = DSC_ConvertToSettable(subComps[0]);

            xmlDocSet.complex = tmpComps;

            return(xmlDocSet);
        }
예제 #4
0
        //XML_DOC_SET_TYPE to XML_DOC_DSC_TYPE conversion
        public static XML_DOC_SET_TYPE ConvertDSCToSETType(XML_DOC_DSC_TYPE DSCsettings)
        {
            if (DSCsettings == null || DSCsettings.complex.Length < 1)
            {
                return(null);
            }

            XML_DOC_SET_TYPE xmlSetDoc = new XML_DOC_SET_TYPE();

            COMPLEX_SET_TYPE[] complexField = xmlSetDoc.complex;
            PopulateComplexSetType(DSCsettings.complex, ref complexField);
            xmlSetDoc.complex = complexField;
            return(xmlSetDoc);
        }
예제 #5
0
        //---------------------------------------------------------
        // Job Setting Enumeration

        public static List <string> DSC_EnumerateSettableValues(XML_DOC_DSC_TYPE xmlDocDsc, string path)
        {
            LinkedList <string> nameList = new LinkedList <string>();

            foreach (string name in path.Split('/'))
            {
                nameList.AddLast(name);
            }

            List <string> list = new List <string>();

            foreach (string e in DSC_EnumerateSettableValues(xmlDocDsc.complex[0], nameList))
            {
                list.Add(e);
            }

            return(list);
        }
예제 #6
0
        private void MakeDummyRequest()
        {
            bool create = CreateWS();

            if (create)
            {
                try
                {
                    XML_DOC_DSC_TYPE  xmlDoc = new XML_DOC_DSC_TYPE();
                    ARG_SETTABLE_TYPE arg    = new ARG_SETTABLE_TYPE();
                    arg.Item = (E_MFP_JOB_TYPE)E_MFP_JOB_TYPE.PRINT;
                    xmlDoc   = mfpWebService.GetJobSettableElements(arg, ref OsaDirectManager.Core.g_WSDLGeneric);
                }
                catch (Exception)
                {
                }
            }
        }
예제 #7
0
        /// <summary>
        /// Inits the values.
        /// </summary>
        /// <remarks>
        /// Sequence Diagram:<br/>
        ///     <img src="SequenceDiagrams/SD_PrintReleaseDevice.Browser.PrintJobs.InitValues.jpg"/>
        /// </remarks>
        private void InitValues()
        {
            try
            {
                bool create = CreateWS();
                if (create)
                {
                    XML_DOC_DSC_TYPE  xmlDoc = new XML_DOC_DSC_TYPE();
                    ARG_SETTABLE_TYPE arg    = new ARG_SETTABLE_TYPE();
                    arg.Item = (E_MFP_JOB_TYPE)E_MFP_JOB_TYPE.PRINT;

                    xmlDoc = mfpWebService.GetJobSettableElements(arg, ref OsaDirectManager.Core.g_WSDLGeneric);

                    XML_DOC_SET_TYPE SETxmlDoc = null;

                    SETxmlDoc = OsaDirectManager.Core.ConvertDSCToSETType(xmlDoc);
                    Session["XML_DOC_SET_TYPE"] = (XML_DOC_SET_TYPE)SETxmlDoc;
                }
            }
            catch (SoapException)
            {
                throw;
            }
        }
예제 #8
0
        //---------------------------------------------------------
        // Job Setting Test

        public static bool DSC_HasProperty(XML_DOC_DSC_TYPE xmlDocDsc, string path)
        {
            return(DSC_IsAllowableValue(xmlDocDsc, path, null));
        }