Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Copyright (c) 2007-2012 Mozilla Foundation
   *
   * Permission is hereby granted, free of charge, to any person obtaining a 
   * copy of this software and associated documentation files (the "Software"), 
   * to deal in the Software without restriction, including without limitation 
   * the rights to use, copy, modify, merge, publish, distribute, sublicense, 
   * and/or sell copies of the Software, and to permit persons to whom the 
   * Software is furnished to do so, subject to the following conditions:
  *
  * The above copyright notice and this permission notice shall be included in 
  * all copies or substantial portions of the Software.
  *
  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 
  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 
  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 
  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 
  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 
  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 
  * DEALINGS IN THE SOFTWARE.
  */
 
 package nu.validator.spec.html5;
 
 import java.util.List;
 
 
 
 public class ImageReportAdviceBuilder implements ContentHandler {
 
     private static final String NS = "http://www.w3.org/1999/xhtml";
 
     private enum State {
         AWAITING_H2, AWAITING_HEADLINE, IN_HEADLINE, AWAITING_H2_END, IN_PROSE
 
     }
 
     private State state = .;
 
     private int depth = 0;
 
     private TreeBuilder treeBuilder;
 
     private final List<DocumentFragmentfragments = new LinkedList<DocumentFragment>();
 
     public static List<DocumentFragmentparseAltAdvice()
             throws IOExceptionSAXException {
         HtmlParser parser = new HtmlParser(.);
         ImageReportAdviceBuilder handler = new ImageReportAdviceBuilder();
         parser.setContentHandler(handler);
         InputSource in = new InputSource(
                 ImageReportAdviceBuilder.class.getClassLoader().getResourceAsStream(
                         "nu/validator/localentities/files/vnu-alt-advice"));
         parser.parse(in);
         return handler.getFragments();
     }
 
     public static void main(String[] argsthrows IOExceptionSAXException {
         parseAltAdvice();
     }
 
     private ImageReportAdviceBuilder() {
 
     }
 
     public void startDocument() throws SAXException {
          = .;
     }
 
     public void startElement(String uriString localNameString qName,
             Attributes attsthrows SAXException {
         switch () {
             case :
                 if ("h2" == localName &&  == uri) {
                      = 0;
                      = .;
                 }
                 return;
             case :
                 if ( == 0 && "span" == localName &&  == uri
                         && "mw-headline".equals(atts.getValue("""class"))) {
                      = .;
                 } else {
                     ++;
                 }
                 return;
            case :
                ++;
                return;
            case :
                ++;
                return;
            case :
                String href = null;
                if ( == uri && "a" == localName) {
                    if ((href = atts.getValue("""href")) != null) {
                        AttributesImpl ai = new AttributesImpl();
                        ai.addAttribute("href"href);
                        ++;
                        .startElement(urilocalNameqNameai);
                    }
                } else if ( == uri && "div" == localName
                        && ("printfooter".equals(atts.getValue("""class")))) {
                    .add((DocumentFragment.getRoot());
                     = null;
                     = .;
                } else if ( == 0 && "h2" == localName &&  == uri) {
                    .add((DocumentFragment.getRoot());
                     = null;
                     = 0;
                     = .;
                } else {
                    ++;
                    .startElement(urilocalNameqName,
                            .);
                }
        }
    }
    public void endElement(String uriString localNameString qName)
            throws SAXException {
        switch () {
            case :
                return;
            case :
                if ( == 0) {
                     = .;
                } else {
                    --;
                }
                return;
            case :
                if ( == 0) {
                     = .;
                } else {
                    --;
                }
                return;
            case :
                if ( == 0) {
                     = new TreeBuilder(truetrue);
                     = .;
                } else {
                    --;
                }
                return;
            case :
                --;
                .endElement(urilocalNameqName);
                return;
        }
    }

    
    public void characters(char[] chint startint length)
            throws SAXException {
        if ( < 0) {
            return;
        }
        switch () {
            case :
                .characters(chstartlength);
                return;
            default:
                return;
        }
    }
    public void endDocument() throws SAXException {
    }
    public void endPrefixMapping(String prefixthrows SAXException {
    }
    public void ignorableWhitespace(char[] chint startint length)
            throws SAXException {
    }
    public void processingInstruction(String targetString data)
            throws SAXException {
    }
    public void setDocumentLocator(Locator locator) {
    }
    public void skippedEntity(String namethrows SAXException {
    }
    public void startPrefixMapping(String prefixString uri)
            throws SAXException {
    }

    
Returns the fragments.

Returns:
the fragments
    private List<DocumentFragmentgetFragments() {
        return ;
    }
New to GrepCode? Check out our FAQ X