Ignore:
Timestamp:
11/23/06 22:24:42 (6 years ago)
Author:
sys
Message:

Implementation api IData.getNode()

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Jav_CO/com/scenari/m/co/donnee/HDonneeUtils.java

    r7458 r7478  
    4848import org.w3c.dom.DocumentFragment; 
    4949import org.w3c.dom.Node; 
     50import org.w3c.dom.traversal.NodeIterator; 
    5051import org.xml.sax.InputSource; 
    5152import org.xml.sax.SAXException; 
     
    7071 */ 
    7172public class HDonneeUtils { 
    72          
     73 
    7374        protected static final Properties OUTPUTPROPS_XML = new Properties(OutputProperties.getDefaultMethodProperties(Method.XML)); 
     75 
    7476        protected static final Properties OUTPUTPROPS_HTML = new Properties(OutputProperties.getDefaultMethodProperties(Method.HTML)); 
     77 
    7578        protected static final Properties OUTPUTPROPS_TEXT = new Properties(OutputProperties.getDefaultMethodProperties(Method.Text)); 
    7679        static { 
    7780                OUTPUTPROPS_XML.setProperty("omit-xml-declaration", "yes"); 
    7881        } 
     82 
    7983        protected static Properties getDefaultMethodProperties(String method) { 
    8084                if (method.equals(Method.XML)) { 
     
    8892                } 
    8993        } 
    90          
     94 
    9195        /** 
    9296         *  
     
    9599                super(); 
    96100        } 
    97          
     101 
    98102        /** 
    99103         * Transforme une valeur string en boolean en recherchant une représentation  
     
    104108         */ 
    105109        public static final boolean hGetBooleanEvalFalse(String pValue) { 
    106         if(pValue == null) return true; 
    107         final int vLen = pValue.length(); 
    108         if(vLen == 0) return true; 
    109         if(vLen == 1) return pValue.charAt(0)!='0'; 
    110         if(vLen == 5) { 
    111             char vChar = pValue.charAt(0); 
    112             if(vChar != 'f' && vChar != 'F') return true; 
    113             vChar = pValue.charAt(1); 
    114             if(vChar != 'a' && vChar != 'A') return true; 
    115             vChar = pValue.charAt(2); 
    116             if(vChar != 'l' && vChar != 'L') return true; 
    117             vChar = pValue.charAt(3); 
    118             if(vChar != 's' && vChar != 'S') return true; 
    119             vChar = pValue.charAt(4); 
    120             if(vChar == 'e' || vChar == 'E') return false; 
    121         } 
     110                if (pValue == null) return true; 
     111                final int vLen = pValue.length(); 
     112                if (vLen == 0) return true; 
     113                if (vLen == 1) return pValue.charAt(0) != '0'; 
     114                if (vLen == 5) { 
     115                        char vChar = pValue.charAt(0); 
     116                        if (vChar != 'f' && vChar != 'F') return true; 
     117                        vChar = pValue.charAt(1); 
     118                        if (vChar != 'a' && vChar != 'A') return true; 
     119                        vChar = pValue.charAt(2); 
     120                        if (vChar != 'l' && vChar != 'L') return true; 
     121                        vChar = pValue.charAt(3); 
     122                        if (vChar != 's' && vChar != 'S') return true; 
     123                        vChar = pValue.charAt(4); 
     124                        if (vChar == 'e' || vChar == 'E') return false; 
     125                } 
    122126                return true; 
    123127        } 
    124          
     128 
    125129        /** 
    126130         * Transforme une valeur string en boolean en recherchant une représentation  
     
    131135         */ 
    132136        public static final boolean hGetBooleanEvalTrue(String pValue) { 
    133         if(pValue == null) return false; 
    134         final int vLen = pValue.length(); 
    135         if(vLen == 0) return false; 
    136         if(vLen == 1) return pValue.charAt(0)=='1'; 
    137         if(vLen == 4) { 
    138             char vChar = pValue.charAt(0); 
    139             if(vChar != 't' && vChar != 'T') return false; 
    140             vChar = pValue.charAt(1); 
    141             if(vChar != 'r' && vChar != 'R') return false; 
    142             vChar = pValue.charAt(2); 
    143             if(vChar != 'u' && vChar != 'U') return false; 
    144             vChar = pValue.charAt(3); 
    145             if(vChar == 'e' || vChar == 'E') return true; 
    146         } 
    147         return false; 
     137                if (pValue == null) return false; 
     138                final int vLen = pValue.length(); 
     139                if (vLen == 0) return false; 
     140                if (vLen == 1) return pValue.charAt(0) == '1'; 
     141                if (vLen == 4) { 
     142                        char vChar = pValue.charAt(0); 
     143                        if (vChar != 't' && vChar != 'T') return false; 
     144                        vChar = pValue.charAt(1); 
     145                        if (vChar != 'r' && vChar != 'R') return false; 
     146                        vChar = pValue.charAt(2); 
     147                        if (vChar != 'u' && vChar != 'U') return false; 
     148                        vChar = pValue.charAt(3); 
     149                        if (vChar == 'e' || vChar == 'E') return true; 
     150                } 
     151                return false; 
    148152        } 
    149153 
     
    158162        } 
    159163         
     164        /** 
     165         *  
     166         */ 
     167        public static final Document hCreateDoc(){ 
     168                return new DocumentImpl(false); 
     169        } 
     170 
    160171        public static final Node hGetNodeFromString(IData pData, IHDialog pDialog, Object pOwner, Object pArguments) throws Exception { 
    161172                String vMime = pData.getMime(pDialog, pOwner, pArguments); 
    162                 if(vMime == IData.MIME_TEXT_XML) { 
     173                if (vMime == IData.MIME_TEXT_XML) { 
    163174                        String vString = pData.getString(pDialog, pOwner, pArguments); 
    164175                        return hGetDocumentFromString(vString); 
    165                 } else if(vMime == IData.MIME_TEXT_XMLFRAGMENT) { 
     176                } else if (vMime == IData.MIME_TEXT_XMLFRAGMENT) { 
    166177                        String vString = pData.getString(pDialog, pOwner, pArguments); 
    167178                        return hGetDocumentFragmentFromString(vString); 
     
    171182        } 
    172183 
    173          
    174184        public static final Node hGetNodeFromString(IComputedData pData) throws Exception { 
    175185                String vMime = pData.getMime(); 
    176                 if(vMime == IData.MIME_TEXT_XML) { 
     186                if (vMime == IData.MIME_TEXT_XML) { 
    177187                        String vString = pData.getString(); 
    178188                        return hGetDocumentFromString(vString); 
    179                 } else if(vMime == IData.MIME_TEXT_XMLFRAGMENT) { 
     189                } else if (vMime == IData.MIME_TEXT_XMLFRAGMENT) { 
    180190                        String vString = pData.getString(); 
    181191                        return hGetDocumentFragmentFromString(vString); 
     
    188198                return new TextImpl(null, pData); 
    189199        } 
    190          
     200 
     201        public static final Node hGetNodeFromNodeIterator(NodeIterator pIt, String pMime) throws Exception { 
     202                if (pMime != null && pMime == IData.MIME_TEXT_XMLFRAGMENT) { 
     203                        //TODO 
     204                        //                      DocumentFragment vFrag = null; 
     205                        //                      Node vNode; 
     206                        //              while (null != (vNode = pIt.nextNode())) { 
     207                        //                      vFrag.appendChild(vNode.cloneNode(true)); 
     208                        //              } 
     209                        //                      return vFrag; 
     210                } 
     211                return pIt.nextNode(); 
     212        } 
     213 
    191214        public static final String hGetStringFromNode(IData pData, IHDialog pDialog, Object pOwner, Object pArguments) throws Exception { 
    192215                StringWriter vWriter = HPoolBuffer.get().hGetStringWriter(); 
     
    200223                return vResult; 
    201224        } 
    202          
     225 
    203226        public static final String hGetStringFromNode(IComputedData pData) throws Exception { 
    204227                StringWriter vWriter = HPoolBuffer.get().hGetStringWriter(); 
     
    212235                return vResult; 
    213236        } 
    214          
     237 
    215238        public static final String hGetStringFromNode(Node pData) throws Exception { 
    216                 if(pData == null) return ""; 
     239                if (pData == null) return ""; 
    217240                StringWriter vWriter = HPoolBuffer.get().hGetStringWriter(); 
    218241                String vResult = ""; 
     
    225248                return vResult; 
    226249        } 
    227          
     250 
    228251        public static final void hWriteFromNode(IData pData, IHDialog pDialog, Object pOwner, Object pArguments, Writer pWriter) throws Exception { 
    229252                String vMime = pData.getMime(pDialog, pOwner, pArguments); 
    230                 if(vMime == IData.MIME_TEXT_HTML) { 
     253                if (vMime == IData.MIME_TEXT_HTML) { 
    231254                        hWriteFromNode(pData.getNode(pDialog, pOwner, pArguments), Method.HTML, pWriter); 
    232                 } else if(vMime == IData.MIME_TEXT_PLAIN || vMime == IData.MIME_TEXT_JS_FCT || vMime == IData.MIME_TEXT_JS_EXP) { 
     255                } else if (vMime == IData.MIME_TEXT_PLAIN || vMime == IData.MIME_TEXT_JS_FCT || vMime == IData.MIME_TEXT_JS_EXP) { 
    233256                        hWriteFromNode(pData.getNode(pDialog, pOwner, pArguments), Method.Text, pWriter); 
    234257                } else { 
     
    236259                } 
    237260        } 
    238          
     261 
    239262        public static final void hWriteFromNode(IComputedData pData, Writer pWriter) throws Exception { 
    240263                Node vNode = pData.getNode(); 
    241                 if(vNode == null) return; 
     264                if (vNode == null) return; 
    242265                String vMime = pData.getMime(); 
    243                 if(vMime == IData.MIME_TEXT_HTML) { 
     266                if (vMime == IData.MIME_TEXT_HTML) { 
    244267                        hWriteFromNode(vNode, Method.HTML, pWriter); 
    245                 } else if(vMime == IData.MIME_TEXT_PLAIN || vMime == IData.MIME_TEXT_JS_FCT || vMime == IData.MIME_TEXT_JS_EXP) { 
     268                } else if (vMime == IData.MIME_TEXT_PLAIN || vMime == IData.MIME_TEXT_JS_FCT || vMime == IData.MIME_TEXT_JS_EXP) { 
    246269                        hWriteFromNode(vNode, Method.Text, pWriter); 
    247270                } else { 
     
    249272                } 
    250273        } 
    251          
     274 
    252275        /** 
    253276         * Sérialise un node en fonction d'une méthode donnée : xml, text, html. 
     
    259282                vSerializer.asDOMSerializer().serialize(pNode); 
    260283        } 
    261          
    262284 
    263285        public static final DocumentFragment hGetDocumentFragmentFromString(String vString) throws Exception, SAXNotRecognizedException, SAXNotSupportedException, IOException, SAXException { 
    264286                DocumentImpl vDoc = new DocumentImpl(false, vString.length()); 
    265                 DocumentFragmentImpl vFrag = (DocumentFragmentImpl)vDoc.createDocumentFragment(); 
     287                DocumentFragmentImpl vFrag = (DocumentFragmentImpl) vDoc.createDocumentFragment(); 
    266288                XMLReader vReader = HPoolXmlReader.hGet().hGetXmlReader(true, false); 
    267289                try { 
Note: See TracChangeset for help on using the changeset viewer.