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


Java CachedData.getData方法代码示例

本文整理汇总了Java中net.spy.memcached.CachedData.getData方法的典型用法代码示例。如果您正苦于以下问题:Java CachedData.getData方法的具体用法?Java CachedData.getData怎么用?Java CachedData.getData使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在net.spy.memcached.CachedData的用法示例。


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

示例1: decode

import net.spy.memcached.CachedData; //导入方法依赖的package包/类
@Override
public CachedResponse decode(CachedData d) {
    try {
        byte[] cachedData = d.getData();
        int headerSeparatorIndex = Bytes.indexOf(cachedData, HEADER_SEPARATOR);

        if (headerSeparatorIndex < 0) {
            return null;
        }

        BufferedReader headerReader = new BufferedReader(new InputStreamReader(
                new ByteArrayInputStream(cachedData, 0, headerSeparatorIndex),
                Charsets.US_ASCII)
        );

        int statusCode = readStatusCode(headerReader);
        MultivaluedMap<String, String> headers = readHeaders(headerReader);
        byte[] responseContent = Arrays.copyOfRange(cachedData, headerSeparatorIndex + HEADER_SEPARATOR.length, cachedData.length);

        return new CachedResponse(statusCode, headers, responseContent);
    } catch (IOException ex) {
        throw new RuntimeException("Corrupted cache entry", ex);
    }
}
 
开发者ID:bazaarvoice,项目名称:dropwizard-caching-bundle,代码行数:25,代码来源:CachedResponseTranscoder.java

示例2: decode

import net.spy.memcached.CachedData; //导入方法依赖的package包/类
@Override
public Object decode(final CachedData d) {
    final byte[] bytes = d.getData();
    try (Input input = new Input(new ByteArrayInputStream(bytes))) {
        final Object obj =  kryo.readClassAndObject(input);
        return obj;
    }
}
 
开发者ID:hsj-xiaokang,项目名称:springboot-shiro-cas-mybatis,代码行数:9,代码来源:KryoTranscoder.java

示例3: decode

import net.spy.memcached.CachedData; //导入方法依赖的package包/类
@Override
public Object decode(final CachedData d) {
    final byte[] bytes = d.getData();
    try (final Input input = new Input(new ByteArrayInputStream(bytes))) {
        final Object obj =  kryo.readClassAndObject(input);
        return obj;
    }
}
 
开发者ID:hsj-xiaokang,项目名称:springboot-shiro-cas-mybatis,代码行数:9,代码来源:KryoTranscoder.java

示例4: decode

import net.spy.memcached.CachedData; //导入方法依赖的package包/类
@Override
public Object decode(final CachedData d) {
    final byte[] bytes = d.getData();
    try (Input input = new Input(new ByteArrayInputStream(bytes))) {
        final Object obj = this.kryo.readClassAndObject(input);
        return obj;
    }
}
 
开发者ID:mrluo735,项目名称:cas-5.1.0,代码行数:9,代码来源:KryoTranscoder.java

示例5: decode

import net.spy.memcached.CachedData; //导入方法依赖的package包/类
@Override
public Object decode(final CachedData d) {
    final byte[] bytes = d.getData();
    final Input input = new Input(new ByteArrayInputStream(bytes));
    final Object obj =  kryo.readClassAndObject(input);
    IOUtils.closeQuietly(input);
    return obj;
}
 
开发者ID:luotuo,项目名称:cas4.0.x-server-wechat,代码行数:9,代码来源:KryoTranscoder.java

示例6: decode

import net.spy.memcached.CachedData; //导入方法依赖的package包/类
@Override
public CachedResponse decode(CachedData d) {
    
    try (final ByteArrayInputStream bais = new ByteArrayInputStream(d.getData());
         final Input input = new Input(bais)){
        
        return kryo.readObject(input, CachedResponse.class);
    } catch (IOException e) {
        throw new MemcacheRestCacheException("Could not decode " + CachedResponse.class.getName(), e);
    }
}
 
开发者ID:kenzanlabs,项目名称:bowtie,代码行数:12,代码来源:MemcacheRestCache.java

示例7: decode

import net.spy.memcached.CachedData; //导入方法依赖的package包/类
@Override
public Object decode(CachedData data) {
    int flags = data.getFlags();

    byte[] decodedBytes = data.getData();

    boolean compressed = (flags & COMPRESS_FLAG) > 0;

    if (compressed) {
        decodedBytes = decompress(decodedBytes);
    }

    Kryo kryo = createKryo();
    return kryo.readClassAndObject(new Input(decodedBytes));
}
 
开发者ID:kwon37xi,项目名称:hibernate4-memcached,代码行数:16,代码来源:KryoTranscoder.java

示例8: decode

import net.spy.memcached.CachedData; //导入方法依赖的package包/类
public Object decode(CachedData d) {
	byte[] data = d.getData();
	Object rv = null;
	int flags = d.getFlags() & SPECIAL_MASK;
	if ((d.getFlags() & SERIALIZED) != 0 && data != null) {
		rv = deserialize(data);
	} else if (flags != 0 && data != null) {
		switch (flags) {
		case SPECIAL_BOOLEAN:
			rv = Boolean.valueOf(tu.decodeBoolean(data));
			break;
		case SPECIAL_INT:
			rv = new Integer(tu.decodeInt(data));
			break;
		case SPECIAL_LONG:
			rv = new Long(tu.decodeLong(data));
			break;
		case SPECIAL_DATE:
			rv = new Date(tu.decodeLong(data));
			break;
		case SPECIAL_BYTE:
			rv = new Byte(tu.decodeByte(data));
			break;
		case SPECIAL_FLOAT:
			rv = new Float(Float.intBitsToFloat(tu.decodeInt(data)));
			break;
		case SPECIAL_DOUBLE:
			rv = new Double(Double.longBitsToDouble(tu.decodeLong(data)));
			break;
		case SPECIAL_BYTEARRAY:
			rv = data;
			break;
		default:
			getLogger().warn("Undecodeable with flags %x", flags);
		}
	} else {
		rv = decodeString(data);
	}
	return rv;
}
 
开发者ID:naver,项目名称:arcus-java-client,代码行数:41,代码来源:CollectionTranscoder.java

示例9: decode

import net.spy.memcached.CachedData; //导入方法依赖的package包/类
public Object decode(CachedData d) {
    byte[] data = d.getData();
    if ((d.getFlags() & COMPRESSED) != 0) {
        try {
            return Snappy.uncompress(data,0,data.length);
        } catch (Exception e) {
            getLogger().warn("Unable to Uncompress");
            data = null;
        }
    }
    return data;
}
 
开发者ID:tootedom,项目名称:tomcat-memcached-response-filter,代码行数:13,代码来源:SerializingTranscoder.java

示例10: decode

import net.spy.memcached.CachedData; //导入方法依赖的package包/类
public Object decode(CachedData d) {
  byte[] data = d.getData();
  Object rv = null;
  if ((d.getFlags() & COMPRESSED) != 0) {
    data = decompress(d.getData());
  }
  if ((d.getFlags() & SERIALIZED) != 0) {
    rv = deserialize(data);
  } else {
    int f = d.getFlags() & ~COMPRESSED;
    switch (f) {
    case SPECIAL_BOOLEAN:
      rv = Boolean.valueOf(this.decodeBoolean(data));
      break;
    case SPECIAL_INT:
      rv = Integer.valueOf(tu.decodeInt(data));
      break;
    case SPECIAL_SHORT:
      rv = Short.valueOf((short) tu.decodeInt(data));
      break;
    case SPECIAL_LONG:
      rv = Long.valueOf(tu.decodeLong(data));
      break;
    case SPECIAL_DATE:
      rv = new Date(tu.decodeLong(data));
      break;
    case SPECIAL_BYTE:
      rv = Byte.valueOf(tu.decodeByte(data));
      break;
    case SPECIAL_FLOAT:
      rv = new Float(Float.intBitsToFloat(tu.decodeInt(data)));
      break;
    case SPECIAL_DOUBLE:
      rv = new Double(Double.longBitsToDouble(tu.decodeLong(data)));
      break;
    case SPECIAL_BYTEARRAY:
      rv = data;
      break;
    case SPECIAL_STRING:
      rv = decodeString(data);
      break;
    case SPECIAL_STRINGBUFFER:
      rv = new StringBuffer(decodeString(data));
      break;
    case SPECIAL_STRINGBUILDER:
      rv = new StringBuilder(decodeString(data));
      break;
    case SPECIAL_CHARACTER:
      rv = decodeCharacter(data);
      break;
    default:
      getLogger().warn("Cannot handle data with flags %x", f);
    }
  }
  return rv;
}
 
开发者ID:Alachisoft,项目名称:TayzGrid,代码行数:57,代码来源:WhalinTranscoder.java

示例11: decode

import net.spy.memcached.CachedData; //导入方法依赖的package包/类
public Object decode(CachedData d) {
  byte[] data = d.getData();
  Object rv = null;
  if ((d.getFlags() & COMPRESSED) != 0) {
    data = decompress(d.getData());
  }
  if ((d.getFlags() & SERIALIZED) != 0) {
    rv = deserialize(data);
  } else {
    int f = data[0];
    switch (f) {
    case SPECIAL_BOOLEAN:
      rv = decodeBoolean(data);
      break;
    case SPECIAL_INTEGER:
      rv = decodeInteger(data);
      break;
    case SPECIAL_SHORT:
      rv = decodeShort(data);
      break;
    case SPECIAL_LONG:
      rv = decodeLong(data);
      break;
    case SPECIAL_DATE:
      rv = new Date(decodeLong(data));
      break;
    case SPECIAL_BYTE:
      rv = decodeByte(data);
      break;
    case SPECIAL_FLOAT:
      rv = decodeFloat(data);
      break;
    case SPECIAL_DOUBLE:
      rv = decodeDouble(data);
      break;
    case SPECIAL_STRING:
      rv = decodeW1String(data);
      break;
    case SPECIAL_STRINGBUFFER:
      rv = new StringBuffer(decodeW1String(data));
      break;
    case SPECIAL_STRINGBUILDER:
      rv = new StringBuilder(decodeW1String(data));
      break;
    case SPECIAL_CHARACTER:
      rv = decodeCharacter(data);
      break;
    default:
      getLogger().warn("Cannot handle data with flags %x", f);
    }
  }
  return rv;
}
 
开发者ID:Alachisoft,项目名称:TayzGrid,代码行数:54,代码来源:WhalinV1Transcoder.java

示例12: decode

import net.spy.memcached.CachedData; //导入方法依赖的package包/类
public Object decode(CachedData d) {
  byte[] data = d.getData();
  Object rv = null;
  if ((d.getFlags() & COMPRESSED) != 0) {
    data = decompress(d.getData());
  }
  int flags = d.getFlags() & SPECIAL_MASK;
  if ((d.getFlags() & SERIALIZED) != 0 && data != null) {
    rv = deserialize(data);
  } else if (flags != 0 && data != null) {
    switch (flags) {
    case SPECIAL_BOOLEAN:
      rv = Boolean.valueOf(tu.decodeBoolean(data));
      break;
    case SPECIAL_INT:
      rv = Integer.valueOf(tu.decodeInt(data));
      break;
    case SPECIAL_LONG:
      rv = Long.valueOf(tu.decodeLong(data));
      break;
    case SPECIAL_DATE:
      rv = new Date(tu.decodeLong(data));
      break;
    case SPECIAL_BYTE:
      rv = Byte.valueOf(tu.decodeByte(data));
      break;
    case SPECIAL_FLOAT:
      rv = new Float(Float.intBitsToFloat(tu.decodeInt(data)));
      break;
    case SPECIAL_DOUBLE:
      rv = new Double(Double.longBitsToDouble(tu.decodeLong(data)));
      break;
    case SPECIAL_BYTEARRAY:
      rv = data;
      break;
    default:
      getLogger().warn("Undecodeable with flags %x", flags);
    }
  } else {
    rv = decodeString(data);
  }
  return rv;
}
 
开发者ID:Alachisoft,项目名称:TayzGrid,代码行数:44,代码来源:SerializingTranscoder.java

示例13: encode

import net.spy.memcached.CachedData; //导入方法依赖的package包/类
@Override
public CachedObject encode(final Object o) {
    CachedData cachedData = transcoder.encode(o);
    return new CachedObjectImpl(cachedData.getFlags(), cachedData.getData());
}
 
开发者ID:ragnor,项目名称:simple-spring-memcached,代码行数:6,代码来源:MemcacheClientWrapper.java

示例14: decode

import net.spy.memcached.CachedData; //导入方法依赖的package包/类
@Override
public byte[] decode(final CachedData cachedData) {
    return cachedData.getData();
}
 
开发者ID:indeedeng,项目名称:lsmtree,代码行数:5,代码来源:MemcachedCache.java

示例15: decode

import net.spy.memcached.CachedData; //导入方法依赖的package包/类
public byte[] decode(CachedData d) {
  return d.getData();
}
 
开发者ID:naver,项目名称:arcus-misc,代码行数:4,代码来源:raw_transcoder.java


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