package com.limegroup.gnutella.stubs; import java.util.Map; import java.util.TreeMap; import org.limewire.collection.Comparators; import com.google.inject.Inject; import com.google.inject.Provider; import com.google.inject.Singleton; import com.limegroup.gnutella.NetworkManager; import com.limegroup.gnutella.dht.DHTManager; import com.limegroup.gnutella.messages.vendor.CapabilitiesVMFactoryImpl; import com.limegroup.gnutella.simpp.SimppManager; import com.limegroup.gnutella.version.UpdateHandler; @Singleton public class CapabilitiesVMFactoryImplStub extends CapabilitiesVMFactoryImpl { Map<byte[], Integer> added = new TreeMap<byte[], Integer>(new Comparators.ByteArrayComparator()); @Inject public CapabilitiesVMFactoryImplStub(Provider<DHTManager> dhtManager, Provider<SimppManager> simppManager, Provider<UpdateHandler> updateHandler, Provider<NetworkManager> networkManager) { super(dhtManager, simppManager, updateHandler, networkManager); } public void addMessageBlock(byte[] name, int version) { added.put(name, version); updateCapabilities(); } @Override protected Map<byte[], Integer> getSupportedMessages() { Map<byte[], Integer> methods = super.getSupportedMessages(); methods.putAll(added); return methods; } }