public interface  org.apache.qpid.proton.engine.Link extends java.lang.Object implements org.apache.qpid.proton.engine.Endpoint
{
public abstract java.lang.String getName();
public abstract org.apache.qpid.proton.engine.Delivery delivery(byte[]);
public abstract org.apache.qpid.proton.engine.Delivery delivery(byte[], int, int);
public abstract org.apache.qpid.proton.engine.Delivery head();
public abstract org.apache.qpid.proton.engine.Delivery current();
public abstract boolean advance();
public abstract org.apache.qpid.proton.amqp.transport.Source getSource();
public abstract org.apache.qpid.proton.amqp.transport.Target getTarget();
public abstract void setSource(org.apache.qpid.proton.amqp.transport.Source);
public abstract void setTarget(org.apache.qpid.proton.amqp.transport.Target);
public abstract org.apache.qpid.proton.amqp.transport.Source getRemoteSource();
public abstract org.apache.qpid.proton.amqp.transport.Target getRemoteTarget();
public abstract org.apache.qpid.proton.engine.Link next(java.util.EnumSet, java.util.EnumSet);
public abstract int getCredit();
public abstract int getQueued();
public abstract int getUnsettled();
public abstract org.apache.qpid.proton.engine.Session getSession();
public abstract org.apache.qpid.proton.amqp.transport.SenderSettleMode getSenderSettleMode();
public abstract void setSenderSettleMode(org.apache.qpid.proton.amqp.transport.SenderSettleMode);
public abstract org.apache.qpid.proton.amqp.transport.SenderSettleMode getRemoteSenderSettleMode();
public abstract org.apache.qpid.proton.amqp.transport.ReceiverSettleMode getReceiverSettleMode();
public abstract void setReceiverSettleMode(org.apache.qpid.proton.amqp.transport.ReceiverSettleMode);
public abstract org.apache.qpid.proton.amqp.transport.ReceiverSettleMode getRemoteReceiverSettleMode();
public abstract void setRemoteSenderSettleMode(org.apache.qpid.proton.amqp.transport.SenderSettleMode);
public abstract java.util.Map getProperties();
public abstract void setProperties(java.util.Map);
public abstract java.util.Map getRemoteProperties();
public abstract int drained();
public abstract int getRemoteCredit();
public abstract boolean getDrain();
public abstract void detach();
public abstract boolean detached();
public abstract void setOfferedCapabilities(org.apache.qpid.proton.amqp.Symbol[]);
public abstract org.apache.qpid.proton.amqp.Symbol[] getOfferedCapabilities();
public abstract org.apache.qpid.proton.amqp.Symbol[] getRemoteOfferedCapabilities();
public abstract void setDesiredCapabilities(org.apache.qpid.proton.amqp.Symbol[]);
public abstract org.apache.qpid.proton.amqp.Symbol[] getDesiredCapabilities();
public abstract org.apache.qpid.proton.amqp.Symbol[] getRemoteDesiredCapabilities();
public abstract void setMaxMessageSize(org.apache.qpid.proton.amqp.UnsignedLong);
public abstract org.apache.qpid.proton.amqp.UnsignedLong getMaxMessageSize();
public abstract org.apache.qpid.proton.amqp.UnsignedLong getRemoteMaxMessageSize();
}