Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 /*
  * Copyright 2010-2015 Amazon.com, Inc. or its affiliates. All Rights Reserved.
  *
  * Licensed under the Apache License, Version 2.0 (the "License").
  * You may not use this file except in compliance with the License.
  * A copy of the License is located at
  *
  *  http://aws.amazon.com/apache2.0
  *
 * or in the "license" file accompanying this file. This file is distributed
 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
 * express or implied. See the License for the specific language governing
 * permissions and limitations under the License.
 */
package com.amazonaws.services.s3.model.transform;
Package private abstract base for all handlers here; adds tracking of the current context so each handler doesn't have to manage it on its own.
abstract class AbstractHandler extends DefaultHandler {
    private final StringBuilder text = new StringBuilder();
    private final LinkedList<Stringcontext = new LinkedList<String>();
    @Override
    public final void startElement(
            String uri,
            String name,
            String qName,
            Attributes attrs) {
        .setLength(0);
        doStartElement(urinameqNameattrs);
        .add(name);
    }
    protected abstract void doStartElement(
            String uri,
            String name,
            String qName,
            Attributes attrs);
    @Override
    public final void endElement(String uriString nameString qName) {
        .removeLast();
        doEndElement(urinameqName);
    }
    protected abstract void doEndElement(
            String uri,
            String name,
            String qName);
    @Override
    public final void characters(char ch[], int startint length) {
        .append(chstartlength);
    }
    protected final String getText() {
        return .toString();
    }
    protected final boolean atTopLevel() {
        return .isEmpty();
    }
    protected final boolean in(String... path) {
        if (path.length != .size()) {
            return false;
        }
        int i = 0;
        for (String element : ) {
            String pattern = path[i];
            if (!(pattern.equals("*") || pattern.equals(element))) {
                return false;
            }
            i += 1;
        }
        return true;
    }
New to GrepCode? Check out our FAQ X