001
014
015 package com.liferay.portal.kernel.nio.intraband.proxy;
016
017 import com.liferay.portal.kernel.io.Deserializer;
018 import com.liferay.portal.kernel.nio.intraband.BaseAsyncDatagramReceiveHandler;
019 import com.liferay.portal.kernel.nio.intraband.Datagram;
020 import com.liferay.portal.kernel.nio.intraband.RegistrationReference;
021
022
025 public class IntrabandProxyDatagramReceiveHandler
026 extends BaseAsyncDatagramReceiveHandler {
027
028 @Override
029 protected void doReceive(
030 RegistrationReference registrationReference, Datagram datagram) {
031
032 Deserializer deserializer = new Deserializer(
033 datagram.getDataByteBuffer());
034
035 String skeletonId = deserializer.readString();
036
037 IntrabandProxySkeleton intrabandProxySkeleton =
038 IntrabandProxySkeletonRegistryUtil.get(skeletonId);
039
040 if (intrabandProxySkeleton == null) {
041 throw new IllegalStateException(
042 "Unable to find skeleton with ID " + skeletonId);
043 }
044
045 intrabandProxySkeleton.dispatch(
046 registrationReference, datagram, deserializer);
047 }
048
049 }