All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazon.ion.IonBinaryWriter Maven / Gradle / Ivy

The newest version!
/*
 * Copyright 2007-2019 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://www.apache.org/licenses/LICENSE-2.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.amazon.ion;

import java.io.IOException;
import java.io.OutputStream;

/**
 * An {@link IonWriter} that encodes Ion binary data.
 *
 * @deprecated Use {@link IonSystem#newBinaryWriter(OutputStream, SymbolTable...)} instead.
 */
@Deprecated
public interface IonBinaryWriter
    extends IonWriter
{

    /**
     * Gets the size in bytes of this binary data.
     * This is generally needed before calling {@link #getBytes()} or
     * {@link #getBytes(byte[], int, int)}.
     *
     * @return the size in bytes.
     */
    @Deprecated
    public int byteSize();

    /**
     * Copies the current contents of this writer as a new byte array holding
     * Ion binary-encoded data.
     * This allocates an array of the size needed to exactly
     * hold the output and copies the entire value to it.
     *
     * @return the byte array with the writers output
     * @throws IOException
     */
    @Deprecated
    public byte[] getBytes()
        throws IOException;


    /**
     * Copies the current contents of the writer to a given byte array
     * array.  This starts writing to the array at offset and writes
     * up to maxlen bytes.
     * If this writer is not able to stop in the middle of its
     * work this may overwrite the array and later throw and exception.
     *
     * @param bytes users byte array to write into
     * @param offset initial offset in the array to write into
     * @param maxlen maximum number of bytes to write
     * @return number of bytes written
     * @throws IOException
     */
    @Deprecated
    public int getBytes(byte[] bytes, int offset, int maxlen)
        throws IOException;

    /**
     * Writes the current contents of the writer to the output
     * stream.  This is only valid if the writer is not in the
     * middle of writing a container.
     *
     * @param userstream OutputStream to write the bytes to
     * @return int length of bytes written
     * @throws IOException
     */
    @Deprecated
    public int writeBytes(OutputStream userstream)
        throws IOException;

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy