blob: db7157d6a4bff30369d2cf85f401eca3a3c49697 [file] [log] [blame]
/**
* 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
*
* http://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.
*/
package kafka.common
case class OffsetAndMetadata(offset: Long,
metadata: String = OffsetAndMetadata.NoMetadata,
var timestamp: Long = -1L) {
override def toString = "OffsetAndMetadata[%d,%s%s]"
.format(offset,
if (metadata != null && metadata.length > 0) metadata else "NO_METADATA",
if (timestamp == -1) "" else "," + timestamp.toString)
}
object OffsetAndMetadata {
val InvalidOffset: Long = -1L
val NoMetadata: String = ""
val InvalidTime: Long = -1L
}
case class OffsetMetadataAndError(offset: Long,
metadata: String = OffsetAndMetadata.NoMetadata,
error: Short = ErrorMapping.NoError) {
def this(offsetMetadata: OffsetAndMetadata, error: Short) =
this(offsetMetadata.offset, offsetMetadata.metadata, error)
def this(error: Short) =
this(OffsetAndMetadata.InvalidOffset, OffsetAndMetadata.NoMetadata, error)
def asTuple = (offset, metadata, error)
override def toString = "OffsetMetadataAndError[%d,%s,%d]".format(offset, metadata, error)
}
object OffsetMetadataAndError {
val NoOffset = OffsetMetadataAndError(OffsetAndMetadata.InvalidOffset, OffsetAndMetadata.NoMetadata, ErrorMapping.NoError)
val OffsetsLoading = OffsetMetadataAndError(OffsetAndMetadata.InvalidOffset, OffsetAndMetadata.NoMetadata, ErrorMapping.OffsetsLoadInProgressCode)
val NotOffsetManagerForGroup = OffsetMetadataAndError(OffsetAndMetadata.InvalidOffset, OffsetAndMetadata.NoMetadata, ErrorMapping.NotCoordinatorForConsumerCode)
val UnknownTopicOrPartition = OffsetMetadataAndError(OffsetAndMetadata.InvalidOffset, OffsetAndMetadata.NoMetadata, ErrorMapping.UnknownTopicOrPartitionCode)
}