/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
namespace Avro.File
{
///
/// Constants used in data files.
///
[System.Diagnostics.CodeAnalysis.SuppressMessage("Design",
"CA1052:Static holder types should be Static or NotInheritable",
Justification = "Maintain public API")]
public class DataFileConstants
{
///
/// Key for the 'sync' metadata entry.
///
public const string MetaDataSync = "avro.sync";
///
/// Key for the 'codec' metadata entry.
///
public const string MetaDataCodec = "avro.codec";
///
/// Key for the 'schema' metadata entry.
///
public const string MetaDataSchema = "avro.schema";
///
/// Identifier for the null codec.
///
public const string NullCodec = "null";
///
/// Identifier for the deflate codec.
///
public const string DeflateCodec = "deflate";
///
/// Reserved 'avro' metadata key.
///
public const string MetaDataReserved = "avro";
///
/// Avro specification version.
///
public const int Version = 1;
///
/// Magic bytes at the beginning of an Avro data file.
///
public static byte[] Magic = { (byte)'O',
(byte)'b',
(byte)'j',
Version };
///
/// Hash code for the null codec.
///
///
public const int NullCodecHash = 2;
///
/// Hash code for the deflate codec.
///
///
public const int DeflateCodecHash = 0;
///
/// Size of a sync token in bytes.
///
public const int SyncSize = 16;
///
/// Default interval for sync tokens.
///
public const int DefaultSyncInterval = 4000 * SyncSize;
}
}