@Override public Codec<EventWrapper<AccessEvent>> resolveCodec(MetaData metaData) { boolean compressed = false; String format = null; if(metaData != null) { Map<String, String> data = metaData.getData(); String compressionStr = data.get(FileConstants.COMPRESSION_KEY); if(FileConstants.COMPRESSION_VALUE_GZIP.equals(compressionStr)) { // TODO: support/handling of other compressions, e.g. Deflate compressed = true; } format = data.get(FileConstants.CONTENT_FORMAT_KEY); } if(FileConstants.CONTENT_FORMAT_VALUE_PROTOBUF.equals(format)) { return new AccessEventWrapperProtobufCodec(compressed); } throw new IllegalArgumentException("Unknown content format " + format + "!"); } }
@Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; FileHeader that = (FileHeader) o; return dataOffset == that.dataOffset && magicValue == that.magicValue && (metaData != null ? metaData.equals(that.metaData) : that.metaData == null); }
@Override public int hashCode() { int result = magicValue; result = 31 * result + (metaData != null ? metaData.hashCode() : 0); result = 31 * result + (int) (dataOffset ^ (dataOffset >>> 32)); return result; }
byte[] buffer = null; int length = 0; MetaData resultMetaData = new MetaData(metaData, sparse);
public static MetaDataProto.MetaData convert(MetaData metaData) { if(metaData == null) { return null; } boolean sparse = metaData.isSparse(); Map<String, String> data = metaData.getData(); MetaDataProto.MetaData.Builder builder = MetaDataProto.MetaData.newBuilder(); if(sparse) { builder.setSparse(sparse); } for(Map.Entry<String, String> current : data.entrySet()) { String key = current.getKey(); String value = current.getValue(); if(key != null) { builder.addEntry(MetaDataProto.MapEntry.newBuilder().setKey(key).setValue(value).build()); } } return builder.build(); } }
private void setFileHeader(FileHeader fileHeader) { lock.lock(); try { MetaData metaData = fileHeader.getMetaData(); if(metaData.isSparse()) { dataStrategy = new SparseDataStrategy<>(); } else { dataStrategy = new DefaultDataStrategy<>(); } this.fileHeader = fileHeader; } finally { lock.unlock(); } } }
return new FileHeader(magicValue, new MetaData(false), offset + META_LENGTH_SIZE);
public static MetaDataProto.MetaData convert(MetaData metaData) { if(metaData == null) { return null; } boolean sparse = metaData.isSparse(); Map<String, String> data = metaData.getData(); MetaDataProto.MetaData.Builder builder = MetaDataProto.MetaData.newBuilder(); if(sparse) { builder.setSparse(sparse); } for(Map.Entry<String, String> current : data.entrySet()) { String key = current.getKey(); String value = current.getValue(); if(key != null) { builder.addEntry(MetaDataProto.MapEntry.newBuilder().setKey(key).setValue(value).build()); } } return builder.build(); } }
private void setFileHeader(FileHeader fileHeader) { lock.lock(); try { MetaData metaData = fileHeader.getMetaData(); if(metaData.isSparse()) { dataStrategy = new SparseDataStrategy<>(); } else { dataStrategy = new DefaultDataStrategy<>(); } this.fileHeader = fileHeader; } finally { lock.unlock(); } } }
byte[] buffer = null; int length = 0; MetaData resultMetaData = new MetaData(metaData, sparse);
@Override public Codec<EventWrapper<LoggingEvent>> resolveCodec(MetaData metaData) { boolean compressed = false; String format = null; if(metaData != null) { Map<String, String> data = metaData.getData(); String compressionStr = data.get(FileConstants.COMPRESSION_KEY); if(FileConstants.COMPRESSION_VALUE_GZIP.equals(compressionStr)) { // TODO: support/handling of other compressions, e.g. Deflate compressed = true; } format = data.get(FileConstants.CONTENT_FORMAT_KEY); } if(FileConstants.CONTENT_FORMAT_VALUE_PROTOBUF.equals(format)) { return new LoggingEventWrapperProtobufCodec(compressed); } throw new IllegalArgumentException("Unknown content format " + format + "!"); } }
private void setFileHeader(FileHeader fileHeader) { MetaData metaData = fileHeader.getMetaData(); if(metaData.isSparse()) { dataStrategy = new SparseDataStrategy<>(); } else { dataStrategy = new DefaultDataStrategy<>(); } this.fileHeader = fileHeader; }
@Override public int hashCode() { int result = magicValue; result = 31 * result + (metaData != null ? metaData.hashCode() : 0); result = 31 * result + (int) (dataOffset ^ (dataOffset >>> 32)); return result; }
@Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; FileHeader that = (FileHeader) o; return dataOffset == that.dataOffset && magicValue == that.magicValue && (metaData != null ? metaData.equals(that.metaData) : that.metaData == null); }
return new FileHeader(magicValue, new MetaData(false), offset + META_LENGTH_SIZE);
private void setFileHeader(FileHeader fileHeader) { MetaData metaData = fileHeader.getMetaData(); if(metaData.isSparse()) { dataStrategy = new SparseDataStrategy<>(); } else { dataStrategy = new DefaultDataStrategy<>(); } this.fileHeader = fileHeader; }
MetaData metaData = new MetaData(metaDataMap, false);
return new MetaData(dataMap, sparse);
return new MetaData(dataMap, sparse);