14ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira/*
24ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * Licensed to the Apache Software Foundation (ASF) under one or more
34ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * contributor license agreements.  See the NOTICE file distributed with
44ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * this work for additional information regarding copyright ownership.
54ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * The ASF licenses this file to You under the Apache License, Version 2.0
64ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * (the "License"); you may not use this file except in compliance with
74ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * the License.  You may obtain a copy of the License at
84ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira *
94ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira *      http://www.apache.org/licenses/LICENSE-2.0
104ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira *
114ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * Unless required by applicable law or agreed to in writing, software
124ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * distributed under the License is distributed on an "AS IS" BASIS,
134ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
144ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * See the License for the specific language governing permissions and
154ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * limitations under the License.
164ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira */
174ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereirapackage org.apache.commons.io.output;
184ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira
194ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraimport java.io.IOException;
204ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraimport java.io.OutputStream;
214ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira
224ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira/**
234ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * This OutputStream writes all data to the famous <b>/dev/null</b>.
244ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * <p>
254ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * This output stream has no destination (file/socket etc.) and all
264ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * bytes written to it are ignored and lost.
274ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira *
284ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * @author Jeremias Maerki
294ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * @version $Id: NullOutputStream.java 610010 2008-01-08 14:50:59Z niallp $
304ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira */
314ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereirapublic class NullOutputStream extends OutputStream {
324ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira
334ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira    /**
344ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     * A singleton.
354ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     */
364ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira    public static final NullOutputStream NULL_OUTPUT_STREAM = new NullOutputStream();
374ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira
384ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira    /**
394ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     * Does nothing - output to <code>/dev/null</code>.
404ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     * @param b The bytes to write
414ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     * @param off The start offset
424ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     * @param len The number of bytes to write
434ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     */
444ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira    public void write(byte[] b, int off, int len) {
454ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira        //to /dev/null
464ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira    }
474ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira
484ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira    /**
494ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     * Does nothing - output to <code>/dev/null</code>.
504ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     * @param b The byte to write
514ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     */
524ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira    public void write(int b) {
534ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira        //to /dev/null
544ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira    }
554ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira
564ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira    /**
574ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     * Does nothing - output to <code>/dev/null</code>.
584ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     * @param b The bytes to write
594ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     * @throws IOException never
604ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira     */
614ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira    public void write(byte[] b) throws IOException {
624ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira        //to /dev/null
634ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira    }
644ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira
654ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira}
66