当前位置: 首页>>代码示例>>Java>>正文


Java ByteArrayDataInput类代码示例

本文整理汇总了Java中com.google.common.io.ByteArrayDataInput的典型用法代码示例。如果您正苦于以下问题:Java ByteArrayDataInput类的具体用法?Java ByteArrayDataInput怎么用?Java ByteArrayDataInput使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


ByteArrayDataInput类属于com.google.common.io包,在下文中一共展示了ByteArrayDataInput类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: handleChannel

import com.google.common.io.ByteArrayDataInput; //导入依赖的package包/类
@EventHandler
public void handleChannel(PluginMessageEvent pluginMessageEvent)
{
    if(!(pluginMessageEvent.getReceiver() instanceof ProxiedPlayer)) return;
    if(pluginMessageEvent.getTag().equalsIgnoreCase("CloudNet"))
    {
        ByteArrayDataInput byteArrayDataInput = ByteStreams.newDataInput(pluginMessageEvent.getData());
        switch (byteArrayDataInput.readUTF().toLowerCase())
        {
            case "connect":
                List<String> servers = CloudProxy.getInstance().getServers(byteArrayDataInput.readUTF()); if(servers.size() == 0) return;
                ((ProxiedPlayer)pluginMessageEvent.getReceiver()).connect(ProxyServer.getInstance().getServerInfo(servers.get(NetworkUtils.RANDOM.nextInt(servers.size()))));
                break;
            case "fallback":
                ((ProxiedPlayer)pluginMessageEvent.getReceiver()).connect(ProxyServer.getInstance()
                        .getServerInfo(CloudProxy.getInstance()
                        .fallback(((ProxiedPlayer)pluginMessageEvent.getReceiver()))));
                break;
            case "command":
                ProxyServer.getInstance().getPluginManager().dispatchCommand(((ProxiedPlayer)pluginMessageEvent.getReceiver()), byteArrayDataInput.readUTF());
                break;
        }
    }
}
 
开发者ID:Dytanic,项目名称:CloudNet,代码行数:25,代码来源:ProxiedListener.java

示例2: onPluginMessageReceived

import com.google.common.io.ByteArrayDataInput; //导入依赖的package包/类
public void onPluginMessageReceived(String channel, Player player, byte[] message) {
	if (!channel.equals("BungeeCord")) {
		return;
	}
	ByteArrayDataInput in = ByteStreams.newDataInput(message);
	String subchannel = in.readUTF();
	
	if (subchannel.equals("SkyWarsReloadedRequest")) { 
		short len = in.readShort();
		byte[] msgbytes = new byte[len];
		in.readFully(msgbytes);

		Game game = gc.getGame(1);
		if (game != null) {
				BungeeUtil.sendSignUpdateRequest(game);
		} else {
			System.out.println("Game " + game + " couldn't be found, please fix your setup.");
		}
	}
}
 
开发者ID:smessie,项目名称:SkyWarsReloaded,代码行数:21,代码来源:SkyWarsReloaded.java

示例3: onPluginMessageReceived

import com.google.common.io.ByteArrayDataInput; //导入依赖的package包/类
@Override
public void onPluginMessageReceived(String channel, Player player, byte[] message) {
    if (!channel.equals("BungeeCord")) {
        return;
    }
    final ByteArrayDataInput in = ByteStreams.newDataInput(message);
    final String type = in.readUTF();
    if (type.equals("ServerIP")) {
        final String serverName = in.readUTF();
        final String ip = in.readUTF();
        final short port = in.readShort();
        this.plugin.getServer().getScheduler().runTaskAsynchronously(this.plugin, () -> {
            final String data = BungeeCordProvider.this.receiveResultFromServer(serverName, ip, port);
            BungeeCordProvider.this.parseData(serverName, data);
        });
    }
}
 
开发者ID:Shynixn,项目名称:BlockBall,代码行数:18,代码来源:BungeeCordProvider.java

示例4: onPluginMessage

import com.google.common.io.ByteArrayDataInput; //导入依赖的package包/类
@EventHandler
public void onPluginMessage(PluginMessageEvent e) {
    if (!e.getTag().equals(CHANNEL)) {
        return;
    }

    e.setCancelled(true);

    if (e.getSender() instanceof ProxiedPlayer) {
        return;
    }

    ByteArrayDataInput in = ByteStreams.newDataInput(e.getData());
    String msg = in.readUTF();

    onMessage(msg, u -> {
        // Forward to other servers
        this.plugin.getScheduler().doAsync(() -> sendMessage(u));
    });
}
 
开发者ID:lucko,项目名称:LuckPerms,代码行数:21,代码来源:BungeeMessagingService.java

示例5: constant

import com.google.common.io.ByteArrayDataInput; //导入依赖的package包/类
/**
 * Reads a constant value at the given index, which must be one of CONSTANT_String_info,
 * CONSTANT_Integer_info, CONSTANT_Float_info, CONSTANT_Long_info, or CONSTANT_Double_info.
 */
Const.Value constant(int index) {
  ByteArrayDataInput reader = byteReader.seek(constantPool[index - 1]);
  byte tag = reader.readByte();
  switch (tag) {
    case CONSTANT_LONG:
      return new Const.LongValue(reader.readLong());
    case CONSTANT_FLOAT:
      return new Const.FloatValue(reader.readFloat());
    case CONSTANT_DOUBLE:
      return new Const.DoubleValue(reader.readDouble());
    case CONSTANT_INTEGER:
      return new Const.IntValue(reader.readInt());
    case CONSTANT_STRING:
      return new Const.StringValue(utf8(reader.readUnsignedShort()));
    default:
      throw new AssertionError(String.format("bad tag: %x", tag));
  }
}
 
开发者ID:google,项目名称:turbine,代码行数:23,代码来源:ConstantPoolReader.java

示例6: onPluginMessageReceived

import com.google.common.io.ByteArrayDataInput; //导入依赖的package包/类
@Override
public void onPluginMessageReceived(String channel, Player p, byte[] message) {
	if (channel.equals(incomingChannel)) {
		ByteArrayDataInput in = ByteStreams.newDataInput(message);
		String subchannel = in.readUTF();

		if (subchannel.equals("AutoLogin")) {
			Player player = Bukkit.getPlayer(in.readUTF());

			if (player != null) {
				if (!xauth.getPlayerManager().getPlayer(player.getName()).isAuthenticated()) {
					xauth.getPlayerManager().doLogin(xauth.getPlayerManager().getPlayer(player));
					if (!autoLoginMessage.isEmpty())
						player.sendMessage(autoLoginMessage);
				}
			}
		}
	}
}
 
开发者ID:CryLegend,项目名称:AuthMeBridge,代码行数:20,代码来源:xAuthBridge.java

示例7: onPluginMessageReceived

import com.google.common.io.ByteArrayDataInput; //导入依赖的package包/类
@Override
public void onPluginMessageReceived(String channel, Player p, byte[] message) {
	if (channel.equals(incomingChannel)) {
		ByteArrayDataInput in = ByteStreams.newDataInput(message);
		String subchannel = in.readUTF();

		if (subchannel.equals("AutoLogin")) {
			Player player = Bukkit.getPlayer(in.readUTF());

			if (player != null) {
				if (!fr.xephi.authme.api.NewAPI.getInstance().isAuthenticated(player)) {
					fr.xephi.authme.api.NewAPI.getInstance().forceLogin(player);
					if (!autoLoginMessage.isEmpty())
						player.sendMessage(autoLoginMessage);
				}
			}
		}
	}
}
 
开发者ID:CryLegend,项目名称:AuthMeBridge,代码行数:20,代码来源:AuthMeBridge.java

示例8: getNext

import com.google.common.io.ByteArrayDataInput; //导入依赖的package包/类
@Override
public Tuple getNext() throws IOException {
    try {
        if (reader.nextKeyValue()) {
            Key key = (Key) reader.getCurrentKey();
            org.apache.accumulo.core.data.Value value = (org.apache.accumulo.core.data.Value) reader.getCurrentValue();
            ByteArrayDataInput input = ByteStreams.newDataInput(key.getRow().getBytes());
            RyaStatement ryaStatement = ryaContext.deserializeTriple(layout, new TripleRow(key.getRow().getBytes(),
                    key.getColumnFamily().getBytes(), key.getColumnQualifier().getBytes()));

            Tuple tuple = TupleFactory.getInstance().newTuple(7);
            tuple.set(0, ryaStatement.getSubject().getData());
            tuple.set(1, ryaStatement.getPredicate().getData());
            tuple.set(2, ryaStatement.getObject().getData());
            tuple.set(3, (ryaStatement.getContext() != null) ? (ryaStatement.getContext().getData()) : (null));
            tuple.set(4, ryaStatement.getSubject().getDataType());
            tuple.set(5, ryaStatement.getPredicate().getDataType());
            tuple.set(6, ryaStatement.getObject().getDataType());
            return tuple;
        }
    } catch (Exception e) {
        throw new IOException(e);
    }
    return null;
}
 
开发者ID:apache,项目名称:incubator-rya,代码行数:26,代码来源:StatementPatternStorage.java

示例9: testSerialization

import com.google.common.io.ByteArrayDataInput; //导入依赖的package包/类
@Test
public void testSerialization() throws Exception
{
    Range<Token> full = new Range<>(tok(-1), tok(-1));

    // populate and validate the tree
    mt.maxsize(256);
    mt.init();
    for (TreeRange range : mt.invalids())
        range.addAll(new HIterator(range.right));

    byte[] initialhash = mt.hash(full);

    DataOutputBuffer out = new DataOutputBuffer();
    MerkleTree.serializer.serialize(mt, out, MessagingService.current_version);
    byte[] serialized = out.toByteArray();

    ByteArrayDataInput in = ByteStreams.newDataInput(serialized);
    MerkleTree restored = MerkleTree.serializer.deserialize(in, MessagingService.current_version);

    assertHashEquals(initialhash, restored.hash(full));
}
 
开发者ID:vcostet,项目名称:cassandra-kmean,代码行数:23,代码来源:MerkleTreeTest.java

示例10: testSerialization

import com.google.common.io.ByteArrayDataInput; //导入依赖的package包/类
@Test
public void testSerialization() throws Exception
{
    Range<Token> full = new Range<>(tok(-1), tok(-1));

    // populate and validate the tree
    mt.maxsize(256);
    mt.init();
    for (TreeRange range : mt.invalids())
        range.addAll(new HIterator(range.right));

    byte[] initialhash = mt.hash(full);

    ByteArrayDataOutput out = ByteStreams.newDataOutput();
    MerkleTree.serializer.serialize(mt, out, MessagingService.current_version);
    byte[] serialized = out.toByteArray();

    ByteArrayDataInput in = ByteStreams.newDataInput(serialized);
    MerkleTree restored = MerkleTree.serializer.deserialize(in, MessagingService.current_version);

    assertHashEquals(initialhash, restored.hash(full));
}
 
开发者ID:pgaref,项目名称:ACaZoo,代码行数:23,代码来源:MerkleTreeTest.java

示例11: readPermissionRequest

import com.google.common.io.ByteArrayDataInput; //导入依赖的package包/类
/**
 * Reads a permission request.
 */
public static PermissionRequest readPermissionRequest(
		Player player, byte[] data) {
	ByteArrayDataInput input = ByteStreams.newDataInput(data);
	
	String requestReason = input.readUTF();
	
	Map<String, String> requestedPerms = new HashMap<>();
	int numRequests = input.readInt();
	for (int i = 0; i < numRequests; i++) {
		String key = input.readUTF();
		String value = input.readUTF();
		
		requestedPerms.put(key, value);
	}
	
	List<ProtectionRange> rangeRequests = new ArrayList<>();
	int numRangeRequests = input.readInt();
	for (int i = 0; i < numRangeRequests; i++) {
		rangeRequests.add(readProtectionRange(input));
	}
	
	return new PermissionRequest(player, requestReason, requestedPerms,
			rangeRequests);
}
 
开发者ID:Pokechu22,项目名称:WorldDownloader-Serverside-Companion,代码行数:28,代码来源:WDLPackets.java

示例12: onPluginMessageReceived

import com.google.common.io.ByteArrayDataInput; //导入依赖的package包/类
/**
 * Calls when the plugin received a message from a bungee-server
 */
@Override
public void onPluginMessageReceived(String channel, Player player, byte[] message) {
	if(!channel.equals(Main.BUNGEE_CHANNEL_NAME)) {
		return;
	}
	
	ByteArrayDataInput in = ByteStreams.newDataInput(message);
    String subchannel = in.readUTF();
    if (subchannel.equals(Subchannel.UPDATE_RECEIVE)) {
    	String game = in.readUTF();
    	String serverName = in.readUTF();
    	
    	String firstLine = in.readUTF();
    	String secondLine = in.readUTF();
    	String thirdLine = in.readUTF();
    	String fourthLine = in.readUTF();
    	
    	SignUpdateInformation info = new SignUpdateInformation(firstLine, secondLine, thirdLine, fourthLine);
    	
    	this.signManager.updateJoinSign(game, serverName, info);
    }
}
 
开发者ID:Yannici,项目名称:bedwars-reloaded-bungee,代码行数:26,代码来源:Main.java

示例13: recievePacket

import com.google.common.io.ByteArrayDataInput; //导入依赖的package包/类
@Override
public void recievePacket(ByteArrayDataInput data) 
{
	posX = data.readDouble();
	posY = data.readDouble();
	posZ = data.readDouble();
	
	motionX = data.readDouble();
	motionY = data.readDouble();
	motionZ = data.readDouble();
	
	rotationPitch = (float)data.readDouble();
	rotationYaw = (float)data.readDouble();
	prevRotationPitch = (float)data.readDouble();
	prevRotationYaw = (float)data.readDouble();
}
 
开发者ID:TheAwesomeGem,项目名称:MineFantasy,代码行数:17,代码来源:EntityBoltMF.java

示例14: consumePacket

import com.google.common.io.ByteArrayDataInput; //导入依赖的package包/类
@Override
public FMLPacket consumePacket(byte[] data)
{
    ByteArrayDataInput dat = ByteStreams.newDataInput(data);
    int versionListSize = dat.readInt();
    modVersions = Maps.newHashMapWithExpectedSize(versionListSize);
    for (int i = 0; i < versionListSize; i++)
    {
        String modName = dat.readUTF();
        String modVersion = dat.readUTF();
        modVersions.put(modName, modVersion);
    }

    int missingModSize = dat.readInt();
    missingMods = Lists.newArrayListWithExpectedSize(missingModSize);

    for (int i = 0; i < missingModSize; i++)
    {
        missingMods.add(dat.readUTF());
    }
    return this;
}
 
开发者ID:HATB0T,项目名称:RuneCraftery,代码行数:23,代码来源:ModListResponsePacket.java

示例15: handleNetworkMessage

import com.google.common.io.ByteArrayDataInput; //导入依赖的package包/类
@Override
public void handleNetworkMessage(NetHandler source, boolean isClient, ByteArrayDataInput data) {
	if (isClient) return;
	
	int x = data.readInt();
	int y = data.readInt();
	int z = data.readInt();
	String sound = data.readUTF();
	
	World world = MiscPeripherals.proxy.getClientWorld();
	
	for (int i = 0; i < 50; i++) {
		MiscPeripherals.proxy.spawnSmoke(x + 0.5D + world.rand.nextFloat() - world.rand.nextFloat(), y + world.rand.nextFloat() - world.rand.nextFloat(), z + 0.5D + world.rand.nextFloat() - world.rand.nextFloat(), 0.0D, 0.0D, 0.0D);
	}
	
	world.playSoundEffect(x + 0.5D, y + 0.5D, z + 0.5D, sound, 0.8F, world.rand.nextFloat() * 0.2F + 0.9F);
}
 
开发者ID:austinv11,项目名称:PeripheralsPlusPlus,代码行数:18,代码来源:ModuleMystcraft.java


注:本文中的com.google.common.io.ByteArrayDataInput类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。