Home » pdfbox-1.1.0-src » org.apache.pdfbox.cos » [javadoc | source]

    1   /*
    2    * Licensed to the Apache Software Foundation (ASF) under one or more
    3    * contributor license agreements.  See the NOTICE file distributed with
    4    * this work for additional information regarding copyright ownership.
    5    * The ASF licenses this file to You under the Apache License, Version 2.0
    6    * (the "License"); you may not use this file except in compliance with
    7    * the License.  You may obtain a copy of the License at
    8    *
    9    *      http://www.apache.org/licenses/LICENSE-2.0
   10    *
   11    * Unless required by applicable law or agreed to in writing, software
   12    * distributed under the License is distributed on an "AS IS" BASIS,
   13    * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   14    * See the License for the specific language governing permissions and
   15    * limitations under the License.
   16    */
   17   package org.apache.pdfbox.cos;
   18   
   19   import org.apache.pdfbox.filter.FilterManager;
   20   import org.apache.pdfbox.pdmodel.common.COSObjectable;
   21   
   22   import org.apache.pdfbox.exceptions.COSVisitorException;
   23   
   24   /**
   25    * The base object that all objects in the PDF document will extend.
   26    *
   27    * @author <a href="ben@benlitchfield.com">Ben Litchfield</a>
   28    * @version $Revision: 1.14 $
   29    */
   30   public abstract class COSBase implements COSObjectable
   31   {
   32       /**
   33        * Constructor.
   34        */
   35       public COSBase()
   36       {
   37       }
   38   
   39       /**
   40        * This will get the filter manager to use to filter streams.
   41        *
   42        * @return The filter manager.
   43        */
   44       public FilterManager getFilterManager()
   45       {
   46           /**
   47            * @todo move this to PDFdocument or something better
   48            */
   49           return new FilterManager();
   50       }
   51   
   52       /**
   53        * Convert this standard java object to a COS object.
   54        *
   55        * @return The cos object that matches this Java object.
   56        */
   57       public COSBase getCOSObject()
   58       {
   59           return this;
   60       }
   61   
   62   
   63   
   64       /**
   65        * visitor pattern double dispatch method.
   66        *
   67        * @param visitor The object to notify when visiting this object.
   68        * @return any object, depending on the visitor implementation, or null
   69        * @throws COSVisitorException If an error occurs while visiting this object.
   70        */
   71       public abstract Object accept(ICOSVisitor visitor) throws COSVisitorException;
   72   }

Home » pdfbox-1.1.0-src » org.apache.pdfbox.cos » [javadoc | source]