summaryrefslogtreecommitdiff
path: root/qpid/java/management/client/src/main/java/org/apache/qpid/management/domain/handler/base/ContentIndicationMessageHandler.java
diff options
context:
space:
mode:
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.java114
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