Oracle® Fusion Middleware C++ API Reference for Oracle Coherence
12c (12.2.1.4.0)

E90870-01

coherence/util/processor/AbstractProcessor.hpp

00001 /*
00002 * AbstractProcessor.hpp
00003 *
00004 * Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
00005 *
00006 * Oracle is a registered trademarks of Oracle Corporation and/or its
00007 * affiliates.
00008 *
00009 * This software is the confidential and proprietary information of Oracle
00010 * Corporation. You shall not disclose such confidential and proprietary
00011 * information and shall use it only in accordance with the terms of the
00012 * license agreement you entered into with Oracle.
00013 *
00014 * This notice may not be removed or altered.
00015 */
00016 #ifndef COH_ABSTRACT_PROCESSOR_HPP
00017 #define COH_ABSTRACT_PROCESSOR_HPP
00018 
00019 #include "coherence/lang.ns"
00020 
00021 #include "coherence/util/Describable.hpp"
00022 #include "coherence/util/InvocableMap.hpp"
00023 #include "coherence/util/Map.hpp"
00024 #include "coherence/util/Set.hpp"
00025 
00026 COH_OPEN_NAMESPACE3(coherence,util, processor)
00027 
00028 using coherence::util::InvocableMap;
00029 using coherence::util::Map;
00030 using coherence::util::Set;
00031 
00032 
00033 /**
00034 * An AbstractProcessor is a partial EntryProcessor implementation that
00035 * provides default implementations of the process and processAll methods.
00036 *
00037 * For EntryProcessors which only run within the Coherence cluster
00038 * (most common case), the C++ process and processAll methods can be left
00039 * unimplemented.
00040 *
00041 * @author tb  2008.04.28
00042 */
00043 class COH_EXPORT AbstractProcessor
00044     : public abstract_spec<AbstractProcessor,
00045         extends<Describable>,
00046         implements<InvocableMap::EntryProcessor> >
00047     {
00048     // ----- InvocableMap::EntryProcessor interface -------------------------
00049 
00050     public:
00051         /**
00052         * {@inheritDoc}
00053         *
00054         * This implementation throws an UnsupportedOperationException.
00055         *
00056         * @since 12.2.1.3
00057         */
00058         virtual Object::Holder process(InvocableMap::Entry::Handle hEntry) const;
00059 
00060     public:
00061         /**
00062         * {@inheritDoc}
00063         */
00064         virtual Map::View processAll(Set::View vSetEntries) const;
00065     };
00066 
00067 COH_CLOSE_NAMESPACE3
00068 
00069 #endif // COH_ABSTRACT_PROCESSOR_HPP
Copyright © 2000, 2019, Oracle and/or its affiliates. All rights reserved.