diff options
Diffstat (limited to 'qpid/java/management/client/src/main/java/org/apache/qpid/management/domain/handler/base/ContentIndicationMessageHandler.java')
-rw-r--r-- | qpid/java/management/client/src/main/java/org/apache/qpid/management/domain/handler/base/ContentIndicationMessageHandler.java | 114 |
1 files changed, 0 insertions, 114 deletions
diff --git a/qpid/java/management/client/src/main/java/org/apache/qpid/management/domain/handler/base/ContentIndicationMessageHandler.java b/qpid/java/management/client/src/main/java/org/apache/qpid/management/domain/handler/base/ContentIndicationMessageHandler.java deleted file mode 100644 index be000e9a05..0000000000 --- a/qpid/java/management/client/src/main/java/org/apache/qpid/management/domain/handler/base/ContentIndicationMessageHandler.java +++ /dev/null @@ -1,114 +0,0 @@ -/* - * - * 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 org.apache.qpid.management.domain.handler.base; - -import org.apache.qpid.management.domain.model.type.Binary; -import org.apache.qpid.transport.codec.Decoder; - -/** - * Base class for content indication message handlers. - * - * @author Andrea Gazzarini - */ -public abstract class ContentIndicationMessageHandler extends BaseMessageHandler -{ - /** - * Processes the income message. - * - * @param decoder the decoder used to parse the message. - * @param sequenceNumber the sequence number of the message. - */ - public final void process (Decoder decoder, int sequenceNumber) - { - String packageName = decoder.readStr8(); - String className = decoder.readStr8(); - Binary classHash = new Binary(decoder.readBin128()); - - long timeStampOfCurrentSample = decoder.readDatetime(); - long timeObjectWasCreated = decoder.readDatetime(); - long timeObjectWasDeleted = decoder.readDatetime(); - - Binary objectId = new Binary(decoder.readBin128()); - - if (objectHasBeenRemoved(timeObjectWasDeleted, timeStampOfCurrentSample)) - { - removeObjectInstance(packageName,className,classHash,objectId); - } else - { - updateDomainModel( - packageName, - className, - classHash, - objectId, - timeStampOfCurrentSample, - timeObjectWasCreated, - timeObjectWasDeleted, - decoder.readReaminingBytes()); - } - } - - /** - * Removes an object instance from the domain model. - * - * @param packageName the package name. - * @param className the class name. - * @param classHash the class hash. - * @param objectId the object identifier. - */ - void removeObjectInstance(String packageName, String className,Binary classHash, Binary objectId) - { - _domainModel.removeObjectInstance(packageName,className,classHash,objectId); - } - - /** - * Checks if the timestamps contained in the message indicate that the object has been removed. - * - * @param deletionTimestamp time object was deleted. - * @param now timestamp of the current message. - * @return true if the object has been removed, false otherwise. - */ - boolean objectHasBeenRemoved(long deletionTimestamp, long now) { - return (deletionTimestamp != 0) && (now > deletionTimestamp); - } - - /** - * Updates domain model with the incoming data. - * This is a template method that each concrete subclass must implement in order to update the domain model - * with the incoming data. - * - * @param packageName the name of the package. - * @param className the name of the class. - * @param objectId the object identifier. - * @param timeStampOfCurrentSample timestamp of current sample. - * @param timeObjectWasCreated time object was created. - * @param timeObjectWasDeleted time object was deleted. - * @param contentData object instance incoming data. - */ - protected abstract void updateDomainModel( - String packageName, - String className, - Binary classHash, - Binary objectId, - long timeStampOfCurrentSample, - long timeObjectWasCreated, - long timeObjectWasDeleted, - byte []contentData ); -}
\ No newline at end of file |