001 package com.skype.ipc;
002
003 import java.io.IOException;
004 //import java.util.ArrayList;
005
006 public interface Encoding {
007 Encoding encodeInt(final int value) throws IOException;
008 Encoding encodeUint(final int value) throws IOException;
009 Encoding encodeUint64(final long value) throws IOException;
010 Encoding encodeString(final String value) throws IOException;
011 Encoding encodeBinary(final byte[] value) throws IOException;
012
013 Encoding addBoolParm(final int tag, final boolean value) throws IOException;
014 Encoding addBoolParm(final int tag, final boolean value, final boolean defaultValue) throws IOException;
015 Encoding addBoolListParm(final int tag, final boolean[] values) throws IOException;
016
017 Encoding addEnumParm(final int tag, final int value) throws IOException;
018 Encoding addEnumParm(final int tag, final int value, final int defval) throws IOException;
019 Encoding addEnumParm(final int tag, final EnumConverting value) throws IOException;
020 Encoding addEnumParm(final int tag, final EnumConverting value, final int defaultValue) throws IOException;
021 Encoding addEnumListParm(final int tag, final EnumConverting[] values) throws IOException;
022
023 Encoding addIntParm(final int tag, final int value) throws IOException;
024 Encoding addIntParm(final int tag, final int value, final int defaultValue) throws IOException;
025 Encoding addIntListParm(final int tag, final int[] values) throws IOException;
026
027 Encoding addUintParm(final int tag, final int value) throws IOException;
028 Encoding addUintParm(final int tag, final int value, final int defaultValue) throws IOException;
029 Encoding addUintListParm(final int tag, final int[] values) throws IOException;
030
031 Encoding addUint64Parm(final int tag, final long value) throws IOException;
032 Encoding addUint64Parm(final int tag, final long value, final long default_value) throws IOException;
033 Encoding addUint64ListParm(final int tag, final long[] values) throws IOException;
034
035 Encoding addObjectParm(final int tag, final SidObject value) throws IOException;
036 Encoding addObjectListParm(final int tag, final SidObject[] values) throws IOException;
037
038 Encoding addStringParm(final int tag, final String value) throws IOException;
039 Encoding addStringParm(final int tag, final String value, final String defaultValue) throws IOException;
040 Encoding addStringListParm(final int tag, final String[] values) throws IOException;
041
042 Encoding addFilenameParm(final int tag, final String value) throws IOException;
043 Encoding addFilenameParm(final int tag, final String value, final String defaultValue) throws IOException;
044 Encoding addFilenameListParm(final int tag, final String[] values) throws IOException;
045
046 Encoding addXmlParm(final int tag, final String value) throws IOException;
047 Encoding addXmlParm(final int tag, final String value, final String defaultValue) throws IOException;
048 Encoding addXmlListParm(final int tag, final String[] values) throws IOException;
049
050 Encoding addBinaryParm(final int tag, final byte[] value) throws IOException;
051 Encoding addBinaryParm(final int tag, final byte[] value, final byte[] defaultValue) throws IOException;
052 Encoding addBinaryListParm(final int tag, final byte[][] values) throws IOException;
053
054 Encoding beginRequest(final byte[] header, final ClientEncodingListener listener) throws IOException;
055 Encoding beginRequest(final byte[] header, final int target, final ClientEncodingListener listener) throws IOException;
056 Decoding endRequest() throws IOException;
057 Decoding endOneWay() throws IOException;
058
059 Decoding doGetRequest(final byte[] header, final SidObject[] objs, final ClientEncodingListener listener) throws IOException;
060 Decoding doGetRequest(final byte[] header, final int oid, final ClientEncodingListener listener) throws IOException;
061
062 Encoding beginMultiGet(final PropertyEnumConverting[] properties, final int modid, final int oid, final ClientEncodingListener listener_) throws IOException;
063 Encoding addMultiGet(final PropertyEnumConverting[] properties, final int modid, final int oid) throws IOException;
064 Encoding addMultiGet(int oid) throws IOException;
065 public Decoding endMultiGet() throws IOException;
066 }
067
068