blob: 23b134bad57bc7f5ae99bd9f4cc142c361b59d5b [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.
*/
#include "PrimitiveMap.h"
#include <sstream>
using namespace activemq::util;
using namespace activemq::exceptions;
using namespace std;
////////////////////////////////////////////////////////////////////////////////
PrimitiveMap::PrimitiveMap()
{
}
////////////////////////////////////////////////////////////////////////////////
PrimitiveMap::PrimitiveMap( const PrimitiveMap& src ) {
this->copy( src );
}
////////////////////////////////////////////////////////////////////////////////
PrimitiveMap::~PrimitiveMap()
{
}
////////////////////////////////////////////////////////////////////////////////
bool PrimitiveMap::equals( const PrimitiveMap& src ) const {
return this->valueNodeMap.equals( src.valueNodeMap );
}
////////////////////////////////////////////////////////////////////////////////
std::string PrimitiveMap::toString() const {
std::vector<std::string> keys = this->valueNodeMap.getKeys();
ostringstream stream;
stream << "Begin Class PrimitiveMap:" << std::endl;
for( std::size_t i = 0; i < keys.size(); ++i ) {
stream << "map[" << keys[i] << "] = "
<< valueNodeMap.getValue( keys[i] ).toString() << std::endl;
}
stream << "Begin Class PrimitiveMap:" << std::endl;
return stream.str();
}
////////////////////////////////////////////////////////////////////////////////
void PrimitiveMap::copy( const PrimitiveMap& src ) {
return this->valueNodeMap.copy( src.valueNodeMap );
}
////////////////////////////////////////////////////////////////////////////////
void PrimitiveMap::clear() {
valueNodeMap.clear();
}
////////////////////////////////////////////////////////////////////////////////
bool PrimitiveMap::contains( const string& key ) const{
return valueNodeMap.containsKey( key );
}
////////////////////////////////////////////////////////////////////////////////
std::size_t PrimitiveMap::size() const{
return valueNodeMap.size();
}
////////////////////////////////////////////////////////////////////////////////
bool PrimitiveMap::isEmpty() const{
return valueNodeMap.isEmpty();
}
////////////////////////////////////////////////////////////////////////////////
bool PrimitiveMap::getBool( const string& key ) const
throw(NoSuchElementException){
ValueNode node = valueNodeMap.getValue( key );
return node.getBool();
}
////////////////////////////////////////////////////////////////////////////////
void PrimitiveMap::setBool( const string& key, bool value ){
ValueNode node;
node.setBool( value );
valueNodeMap.setValue( key, node );
}
////////////////////////////////////////////////////////////////////////////////
unsigned char PrimitiveMap::getByte( const string& key ) const
throw(NoSuchElementException){
ValueNode node = valueNodeMap.getValue( key );
return node.getByte();
}
////////////////////////////////////////////////////////////////////////////////
void PrimitiveMap::setByte( const string& key, unsigned char value ){
ValueNode node;
node.setByte( value );
valueNodeMap.setValue( key, node );
}
////////////////////////////////////////////////////////////////////////////////
char PrimitiveMap::getChar( const string& key ) const
throw(NoSuchElementException){
ValueNode node = valueNodeMap.getValue( key );
return node.getChar();
}
////////////////////////////////////////////////////////////////////////////////
void PrimitiveMap::setChar( const string& key, char value ){
ValueNode node;
node.setChar( value );
valueNodeMap.setValue( key, node );
}
////////////////////////////////////////////////////////////////////////////////
short PrimitiveMap::getShort( const string& key ) const
throw(NoSuchElementException){
ValueNode node = valueNodeMap.getValue( key );
return node.getShort();
}
////////////////////////////////////////////////////////////////////////////////
void PrimitiveMap::setShort( const string& key, short value ){
ValueNode node;
node.setShort( value );
valueNodeMap.setValue( key, node );
}
////////////////////////////////////////////////////////////////////////////////
int PrimitiveMap::getInt( const string& key ) const
throw(NoSuchElementException){
ValueNode node = valueNodeMap.getValue( key );
return node.getInt();
}
////////////////////////////////////////////////////////////////////////////////
void PrimitiveMap::setInt( const string& key, int value ){
ValueNode node;
node.setInt( value );
valueNodeMap.setValue( key, node );
}
////////////////////////////////////////////////////////////////////////////////
long long PrimitiveMap::getLong( const string& key ) const
throw(NoSuchElementException){
ValueNode node = valueNodeMap.getValue( key );
return node.getLong();
}
////////////////////////////////////////////////////////////////////////////////
void PrimitiveMap::setLong( const string& key, long long value ){
ValueNode node;
node.setLong( value );
valueNodeMap.setValue( key, node );
}
////////////////////////////////////////////////////////////////////////////////
double PrimitiveMap::getDouble( const string& key ) const
throw(NoSuchElementException){
ValueNode node = valueNodeMap.getValue( key );
return node.getDouble();
}
////////////////////////////////////////////////////////////////////////////////
void PrimitiveMap::setDouble( const string& key, double value ){
ValueNode node;
node.setDouble( value );
valueNodeMap.setValue( key, node );
}
////////////////////////////////////////////////////////////////////////////////
float PrimitiveMap::getFloat( const string& key ) const
throw(NoSuchElementException){
ValueNode node = valueNodeMap.getValue( key );
return node.getFloat();
}
////////////////////////////////////////////////////////////////////////////////
void PrimitiveMap::setFloat( const string& key, float value ){
ValueNode node;
node.setFloat( value );
valueNodeMap.setValue( key, node );
}
////////////////////////////////////////////////////////////////////////////////
string PrimitiveMap::getString( const string& key ) const
throw(NoSuchElementException){
ValueNode node = valueNodeMap.getValue( key );
return node.getString();
}
////////////////////////////////////////////////////////////////////////////////
void PrimitiveMap::setString( const string& key, const string& value ){
ValueNode node;
node.setString( value );
valueNodeMap.setValue( key, node );
}
////////////////////////////////////////////////////////////////////////////////
std::vector<unsigned char> PrimitiveMap::getByteArray( const std::string& key ) const
throw( activemq::exceptions::NoSuchElementException ) {
ValueNode node = valueNodeMap.getValue( key );
return node.getByteArray();
}
////////////////////////////////////////////////////////////////////////////////
void PrimitiveMap::setByteArray( const std::string& key,
const std::vector<unsigned char>& value ) {
ValueNode node;
node.setByteArray( value );
valueNodeMap.setValue( key, node );
}
////////////////////////////////////////////////////////////////////////////////
void PrimitiveMap::remove( const string& key ){
valueNodeMap.remove( key );
}
////////////////////////////////////////////////////////////////////////////////
vector<string> PrimitiveMap::getKeys() const{
return valueNodeMap.getKeys();
}
////////////////////////////////////////////////////////////////////////////////
vector<PrimitiveMap::ValueNode> PrimitiveMap::getValues() const{
return valueNodeMap.getValues();
}
////////////////////////////////////////////////////////////////////////////////
PrimitiveMap::ValueNode PrimitiveMap::getValue( const std::string& key ) const
throw ( activemq::exceptions::NoSuchElementException ) {
return valueNodeMap.getValue( key );
}