[PATCH] FieldCache Improvments


Adrienne Ambrose <AAmbrose@...>
 

Testing :-

 

This is not OS dependent 
This is not middleware dependent 

 

The below patches were as discussed with Damian to remove all the commented out sections of dead code from the fieldcache files in both c and cpp directories.

Also to change the way we throw exceptions to be more standardised - i.e. throw a MamaStatus

 

 

Build and run up a mamalistencachedc for example. Everything should work as before.

 

Also Unittests ran :-

MamaFieldCacheFieldTypesTest unittests:

 

[ RUN      ] MamaFieldCacheFieldTypesTest.testI8Vector
[       OK ] MamaFieldCacheFieldTypesTest.testI8Vector (0 ms)
[ RUN      ] MamaFieldCacheFieldTypesTest.testU8Vector
[       OK ] MamaFieldCacheFieldTypesTest.testU8Vector (0 ms)
[ RUN      ] MamaFieldCacheFieldTypesTest.testI16Vector
[       OK ] MamaFieldCacheFieldTypesTest.testI16Vector (0 ms)
[ RUN      ] MamaFieldCacheFieldTypesTest.testU16Vector
[       OK ] MamaFieldCacheFieldTypesTest.testU16Vector (0 ms)
[ RUN      ] MamaFieldCacheFieldTypesTest.testI32Vector
[       OK ] MamaFieldCacheFieldTypesTest.testI32Vector (0 ms)
[ RUN      ] MamaFieldCacheFieldTypesTest.testU32Vector
[       OK ] MamaFieldCacheFieldTypesTest.testU32Vector (0 ms)
[ RUN      ] MamaFieldCacheFieldTypesTest.testI64Vector
[       OK ] MamaFieldCacheFieldTypesTest.testI64Vector (0 ms)
[ RUN      ] MamaFieldCacheFieldTypesTest.testU64Vector
[       OK ] MamaFieldCacheFieldTypesTest.testU64Vector (0 ms)
[ RUN      ] MamaFieldCacheFieldTypesTest.testF32Vector
[       OK ] MamaFieldCacheFieldTypesTest.testF32Vector (0 ms)
[ RUN      ] MamaFieldCacheFieldTypesTest.testF64Vector
[       OK ] MamaFieldCacheFieldTypesTest.testF64Vector (0 ms)
[ RUN      ] MamaFieldCacheFieldTypesTest.testStringVector
[       OK ] MamaFieldCacheFieldTypesTest.testStringVector (0 ms)
[ RUN      ] MamaFieldCacheFieldTypesTest.testPriceVector
[       OK ] MamaFieldCacheFieldTypesTest.testPriceVector (0 ms)
[ RUN      ] MamaFieldCacheFieldTypesTest.testDateTimeVector
[       OK ] MamaFieldCacheFieldTypesTest.testDateTimeVector (0 ms)

 

 

PATCH:-    0003-FieldCache-Improvments-Fix-exception-throwing

From a7e9a75152239e9769dae728d460b964ac1fea25 Mon Sep 17 00:00:00 2001

From: Gary Molloy <gmolloy@...>

Date: Fri, 8 Aug 2014 11:27:31 +0100

Subject: [PATCH 3/4] FieldCache Improvments - Fix exception throwing

 

The throwing of exceptions in MamaFieldCacheFieldTypes was not in line with the rest of MAMA

[OMAMA-275 / OMAMA-276]

 

Signed-off-by: Gary Molloy <gmolloy@...>

---

.../cpp/fieldcache/MamaFieldCacheFieldTypes.cpp    | 32 ++++++------

.../fieldcache/MamaFieldCacheFieldTypesTest.cpp    | 57 +++++++++++++++-------

2 files changed, 54 insertions(+), 35 deletions(-)

 

diff --git a/mama/c_cpp/src/cpp/fieldcache/MamaFieldCacheFieldTypes.cpp b/mama/c_cpp/src/cpp/fieldcache/MamaFieldCacheFieldTypes.cpp

index fa6e554..0a02613 100644

--- a/mama/c_cpp/src/cpp/fieldcache/MamaFieldCacheFieldTypes.cpp

+++ b/mama/c_cpp/src/cpp/fieldcache/MamaFieldCacheFieldTypes.cpp

@@ -300,7 +300,7 @@ const mama_i8_t& MamaFieldCacheFieldI8Vector::get(const MamaFieldCacheField& fie

     mamaFieldCacheField_getI8Vector(field.getCValue(), &values, &size);

     if (index < size)

         return values[index];

-    throw std::out_of_range("MamaFieldCacheFieldI8Vector::get");

+    throw MamaStatus(MAMA_STATUS_INVALID_ARG);

}

 // MAMA_FIELD_TYPE_VECTOR_U8

@@ -329,7 +329,7 @@ const mama_u8_t& MamaFieldCacheFieldU8Vector::get(const MamaFieldCacheField& fie

     mamaFieldCacheField_getU8Vector(field.getCValue(), &values, &size);

     if (index < size)

         return values[index];

-    throw std::out_of_range("MamaFieldCacheFieldU8Vector::get");

+    throw MamaStatus(MAMA_STATUS_INVALID_ARG);

}

 // MAMA_FIELD_TYPE_VECTOR_I16

@@ -359,7 +359,7 @@ const mama_i16_t& MamaFieldCacheFieldI16Vector::get(const MamaFieldCacheField& f

     mamaFieldCacheField_getI16Vector(field.getCValue(), &values, &size);

     if (index < size)

         return values[index];

-    throw std::out_of_range("MamaFieldCacheFieldI16Vector::get");

+    throw MamaStatus(MAMA_STATUS_INVALID_ARG);

}

 // MAMA_FIELD_TYPE_VECTOR_U16

@@ -389,7 +389,7 @@ const mama_u16_t& MamaFieldCacheFieldU16Vector::get(const MamaFieldCacheField& f

     mamaFieldCacheField_getU16Vector(field.getCValue(), &values, &size);

     if (index < size)

         return values[index];

-    throw std::out_of_range("MamaFieldCacheFieldU16Vector::get");

+    throw MamaStatus(MAMA_STATUS_INVALID_ARG);

}

 // MAMA_FIELD_TYPE_VECTOR_I32

@@ -419,7 +419,7 @@ const mama_i32_t& MamaFieldCacheFieldI32Vector::get(const MamaFieldCacheField& f

     mamaFieldCacheField_getI32Vector(field.getCValue(), &values, &size);

     if (index < size)

         return values[index];

-    throw std::out_of_range("MamaFieldCacheFieldI32Vector::get");

+    throw MamaStatus(MAMA_STATUS_INVALID_ARG);

}

 // MAMA_FIELD_TYPE_VECTOR_U32

@@ -449,7 +449,7 @@ const mama_u32_t& MamaFieldCacheFieldU32Vector::get(const MamaFieldCacheField& f

     mamaFieldCacheField_getU32Vector(field.getCValue(), &values, &size);

     if (index < size)

         return values[index];

-    throw std::out_of_range("MamaFieldCacheFieldU32Vector::get");

+    throw MamaStatus(MAMA_STATUS_INVALID_ARG);

}

 // MAMA_FIELD_TYPE_VECTOR_I64

@@ -478,7 +478,7 @@ const mama_i64_t& MamaFieldCacheFieldI64Vector::get(const MamaFieldCacheField& f

     mamaFieldCacheField_getI64Vector(field.getCValue(), &values, &size);

     if (index < size)

         return values[index];

-    throw std::out_of_range("MamaFieldCacheFieldI64Vector::get");

+    throw MamaStatus(MAMA_STATUS_INVALID_ARG);

}

 // MAMA_FIELD_TYPE_VECTOR_U64

@@ -508,7 +508,7 @@ const mama_u64_t& MamaFieldCacheFieldU64Vector::get(const MamaFieldCacheField& f

     mamaFieldCacheField_getU64Vector(field.getCValue(), &values, &size);

     if (index < size)

         return values[index];

-    throw std::out_of_range("MamaFieldCacheFieldU64Vector::get");

+    throw MamaStatus(MAMA_STATUS_INVALID_ARG);

}

 // MAMA_FIELD_TYPE_VECTOR_F32

@@ -538,7 +538,7 @@ const mama_f32_t& MamaFieldCacheFieldF32Vector::get(const MamaFieldCacheField& f

     mamaFieldCacheField_getF32Vector(field.getCValue(), &values, &size);

     if (index < size)

         return values[index];

-    throw std::out_of_range("MamaFieldCacheFieldF32Vector::get");

+    throw MamaStatus(MAMA_STATUS_INVALID_ARG);

}

 // MAMA_FIELD_TYPE_VECTOR_F64

@@ -568,7 +568,7 @@ const mama_f64_t& MamaFieldCacheFieldF64Vector::get(const MamaFieldCacheField& f

     mamaFieldCacheField_getF64Vector(field.getCValue(), &values, &size);

     if (index < size)

         return values[index];

-    throw std::out_of_range("MamaFieldCacheFieldF64Vector::get");

+    throw MamaStatus(MAMA_STATUS_INVALID_ARG);

}

 // MAMA_FIELD_TYPE_VECTOR_STRING

@@ -594,10 +594,8 @@ const char* MamaFieldCacheFieldStringVector::get(const MamaFieldCacheField& fiel

     mama_size_t size = 0;

     mamaFieldCacheField_getStringVector(field.getCValue(), &values, &size);

     if (index < size)

-    {

         return values[index];

-    }

-    return NULL;

+    throw MamaStatus(MAMA_STATUS_INVALID_ARG);

}

 // MAMA_FIELD_TYPE_VECTOR_PRICE

@@ -642,7 +640,7 @@ const MamaPrice* MamaFieldCacheFieldPriceVector::get(const MamaFieldCacheField&

         mamaPrice_copy(mValue.getCValue(), values[index]);

         return &mValue;

     }

-    return NULL;

+    throw MamaStatus(MAMA_STATUS_INVALID_ARG);

}

 // MAMA_FIELD_TYPE_VECTOR_TIME

@@ -687,7 +685,7 @@ const MamaDateTime* MamaFieldCacheFieldDateTimeVector::get(const MamaFieldCacheF

         mamaDateTime_copy(mValue.getCValue(), values[index]);

         return &mValue;

     }

-    return NULL;

+    throw MamaStatus(MAMA_STATUS_INVALID_ARG);

}

 

@@ -741,7 +739,7 @@ void getFieldValue(const MamaFieldCacheField& field,

{

//    MamaFieldCacheFieldPriceVector getField;

//    getField.get(field, values, size);

-    throw "getFieldValue for MamaPrice vector not implemented";

+    throw MamaStatus(MAMA_STATUS_NOT_IMPLEMENTED);

}

 void getFieldValue(const MamaFieldCacheField& field,

@@ -750,7 +748,7 @@ void getFieldValue(const MamaFieldCacheField& field,

{

//    MamaFieldCacheFieldDateTimeVector getField;

//    getField.get(field, values, size);

-    throw "getFieldValue for MamaDateTime vector not implemented";

+    throw MamaStatus(MAMA_STATUS_NOT_IMPLEMENTED);

}

 

diff --git a/mama/c_cpp/src/gunittest/cpp/fieldcache/MamaFieldCacheFieldTypesTest.cpp b/mama/c_cpp/src/gunittest/cpp/fieldcache/MamaFieldCacheFieldTypesTest.cpp

index e72b0fb..ee4c6b1 100644

--- a/mama/c_cpp/src/gunittest/cpp/fieldcache/MamaFieldCacheFieldTypesTest.cpp

+++ b/mama/c_cpp/src/gunittest/cpp/fieldcache/MamaFieldCacheFieldTypesTest.cpp

@@ -537,6 +537,9 @@ TEST_F(MamaFieldCacheFieldTypesTest, testI8Vector)

     ASSERT_EQ(2, field.get(fieldBase, 2));

     ASSERT_EQ(3, field.get(fieldBase, 3));

     ASSERT_EQ(4, field.get(fieldBase, 4));

+

+    size = 9;

+    ASSERT_THROW (field.get(fieldBase, size), MamaStatus);

}

 TEST_F(MamaFieldCacheFieldTypesTest, testU8Vector)

@@ -577,6 +580,9 @@ TEST_F(MamaFieldCacheFieldTypesTest, testU8Vector)

     ASSERT_EQ(2, field.get(fieldBase, 2));

     ASSERT_EQ(3, field.get(fieldBase, 3));

     ASSERT_EQ(4, field.get(fieldBase, 4));

+

+    size = 9;

+    ASSERT_THROW (field.get(fieldBase, size), MamaStatus);

}

 TEST_F(MamaFieldCacheFieldTypesTest, testI16Vector)

@@ -617,6 +623,9 @@ TEST_F(MamaFieldCacheFieldTypesTest, testI16Vector)

     ASSERT_EQ(2, field.get(fieldBase, 2));

     ASSERT_EQ(3, field.get(fieldBase, 3));

     ASSERT_EQ(4, field.get(fieldBase, 4));

+

+    size = 9;

+    ASSERT_THROW (field.get(fieldBase, size), MamaStatus);

}

 TEST_F(MamaFieldCacheFieldTypesTest, testU16Vector)

@@ -657,6 +666,9 @@ TEST_F(MamaFieldCacheFieldTypesTest, testU16Vector)

     ASSERT_EQ(2, field.get(fieldBase, 2));

     ASSERT_EQ(3, field.get(fieldBase, 3));

     ASSERT_EQ(4, field.get(fieldBase, 4));

+

+    size = 9;

+    ASSERT_THROW (field.get(fieldBase, size), MamaStatus);

}

 TEST_F(MamaFieldCacheFieldTypesTest, testI32Vector)

@@ -697,6 +709,9 @@ TEST_F(MamaFieldCacheFieldTypesTest, testI32Vector)

     ASSERT_EQ(2, field.get(fieldBase, 2));

     ASSERT_EQ(3, field.get(fieldBase, 3));

     ASSERT_EQ(4, field.get(fieldBase, 4));

+

+    size = 9;

+    ASSERT_THROW (field.get(fieldBase, size), MamaStatus);

}

 TEST_F(MamaFieldCacheFieldTypesTest, testU32Vector)

@@ -737,6 +752,9 @@ TEST_F(MamaFieldCacheFieldTypesTest, testU32Vector)

     ASSERT_EQ(2, field.get(fieldBase, 2));

     ASSERT_EQ(3, field.get(fieldBase, 3));

     ASSERT_EQ(4, field.get(fieldBase, 4));

+

+    size = 9;

+    ASSERT_THROW (field.get(fieldBase, size), MamaStatus);

}

 TEST_F(MamaFieldCacheFieldTypesTest, testI64Vector)

@@ -777,6 +795,9 @@ TEST_F(MamaFieldCacheFieldTypesTest, testI64Vector)

     ASSERT_EQ(2, field.get(fieldBase, 2));

     ASSERT_EQ(3, field.get(fieldBase, 3));

     ASSERT_EQ(4, field.get(fieldBase, 4));

+

+    size = 9;

+    ASSERT_THROW (field.get(fieldBase, size), MamaStatus);

}

 TEST_F(MamaFieldCacheFieldTypesTest, testU64Vector)

@@ -817,6 +838,9 @@ TEST_F(MamaFieldCacheFieldTypesTest, testU64Vector)

     ASSERT_EQ(2, field.get(fieldBase, 2));

     ASSERT_EQ(3, field.get(fieldBase, 3));

     ASSERT_EQ(4, field.get(fieldBase, 4));

+

+    size = 9;

+    ASSERT_THROW (field.get(fieldBase, size), MamaStatus);

}

 TEST_F(MamaFieldCacheFieldTypesTest, testF32Vector)

@@ -858,6 +882,9 @@ TEST_F(MamaFieldCacheFieldTypesTest, testF32Vector)

     ASSERT_FLOAT_EQ(2.5, field.get(fieldBase, 2));

     ASSERT_FLOAT_EQ(3, field.get(fieldBase, 3));

     ASSERT_FLOAT_EQ(4.1, field.get(fieldBase, 4));

+

+    size = 9;

+    ASSERT_THROW (field.get(fieldBase, size), MamaStatus);

}

 TEST_F(MamaFieldCacheFieldTypesTest, testF64Vector)

@@ -899,6 +926,9 @@ TEST_F(MamaFieldCacheFieldTypesTest, testF64Vector)

     ASSERT_DOUBLE_EQ(2.5, field.get(fieldBase, 2));

     ASSERT_DOUBLE_EQ(3, field.get(fieldBase, 3));

     ASSERT_DOUBLE_EQ(4.1, field.get(fieldBase, 4));

+

+    size = 9;

+    ASSERT_THROW (field.get(fieldBase, size), MamaStatus);

}

 TEST_F(MamaFieldCacheFieldTypesTest, testStringVector)

@@ -940,6 +970,9 @@ TEST_F(MamaFieldCacheFieldTypesTest, testStringVector)

     ASSERT_STREQ("2.5 modified", field.get(fieldBase, 2));

     ASSERT_STREQ("hello", field.get(fieldBase, 3));

     ASSERT_STREQ("4.1", field.get(fieldBase, 4));

+

+    size = 9;

+    ASSERT_THROW (field.get(fieldBase, size), MamaStatus);

}

 TEST_F(MamaFieldCacheFieldTypesTest, testPriceVector)

@@ -961,7 +994,6 @@ TEST_F(MamaFieldCacheFieldTypesTest, testPriceVector)

     ASSERT_DOUBLE_EQ(-2, field.get(fieldBase, 2)->getValue());

     ASSERT_DOUBLE_EQ(3, field.get(fieldBase, 3)->getValue());

     ASSERT_DOUBLE_EQ(4.1, field.get(fieldBase, 4)->getValue());

-    ASSERT_FALSE(field.get(fieldBase, 10));

    

     const MamaPrice* result = NULL;

     std::size_t size = 0;

@@ -973,14 +1005,6 @@ TEST_F(MamaFieldCacheFieldTypesTest, testPriceVector)

     ASSERT_DOUBLE_EQ(-2, result[2].getValue());

     ASSERT_DOUBLE_EQ(3, result[3].getValue());

     ASSERT_DOUBLE_EQ(4.1, result[4].getValue());

-//    getFieldValue(fieldBase, result, size);

-//    ASSERT_TRUE(result);

-//    ASSERT_EQ(5, size);

-//    ASSERT_DOUBLE_EQ(0.1, result[0].getValue());

-//    ASSERT_DOUBLE_EQ(1, result[1].getValue());

-//    ASSERT_DOUBLE_EQ(-2, result[2].getValue());

-//    ASSERT_DOUBLE_EQ(3, result[3].getValue());

-//    ASSERT_DOUBLE_EQ(4.1, result[4].getValue());

    

     values[2].setValue(55.5);

     setFieldValue(fieldBase, values, 5);

@@ -992,6 +1016,9 @@ TEST_F(MamaFieldCacheFieldTypesTest, testPriceVector)

     ASSERT_DOUBLE_EQ(55.5, result[2].getValue());

     ASSERT_DOUBLE_EQ(3, result[3].getValue());

     ASSERT_DOUBLE_EQ(4.1, result[4].getValue());

+

+    size = 9;

+    ASSERT_THROW (field.get(fieldBase, size), MamaStatus);

}

 TEST_F(MamaFieldCacheFieldTypesTest, testDateTimeVector)

@@ -1013,7 +1040,6 @@ TEST_F(MamaFieldCacheFieldTypesTest, testDateTimeVector)

     ASSERT_DOUBLE_EQ(3000, field.get(fieldBase, 2)->getEpochTimeSeconds());

     ASSERT_DOUBLE_EQ(4000, field.get(fieldBase, 3)->getEpochTimeSeconds());

     ASSERT_DOUBLE_EQ(5000, field.get(fieldBase, 4)->getEpochTimeSeconds());

-    ASSERT_FALSE(field.get(fieldBase, 10));

    

     const MamaDateTime* result = NULL;

     std::size_t size = 0;

@@ -1025,14 +1051,6 @@ TEST_F(MamaFieldCacheFieldTypesTest, testDateTimeVector)

     ASSERT_DOUBLE_EQ(3000, result[2].getEpochTimeSeconds());

     ASSERT_DOUBLE_EQ(4000, result[3].getEpochTimeSeconds());

     ASSERT_DOUBLE_EQ(5000, result[4].getEpochTimeSeconds());

-//    getFieldValue(fieldBase, result, size);

-//    ASSERT_TRUE(result);

-//    ASSERT_EQ(5, size);

-//    ASSERT_DOUBLE_EQ(1000, result[0].getEpochTimeSeconds());

-//    ASSERT_DOUBLE_EQ(2000, result[1].getEpochTimeSeconds());

-//    ASSERT_DOUBLE_EQ(3000, result[2].getEpochTimeSeconds());

-//    ASSERT_DOUBLE_EQ(4000, result[3].getEpochTimeSeconds());

-//    ASSERT_DOUBLE_EQ(5000, result[4].getEpochTimeSeconds());

    

     values[2].setEpochTimeF64(6000);

     setFieldValue(fieldBase, values, 5);

@@ -1045,6 +1063,9 @@ TEST_F(MamaFieldCacheFieldTypesTest, testDateTimeVector)

     ASSERT_DOUBLE_EQ(6000, result[2].getEpochTimeSeconds());

     ASSERT_DOUBLE_EQ(4000, result[3].getEpochTimeSeconds());

     ASSERT_DOUBLE_EQ(5000, result[4].getEpochTimeSeconds());

+

+    size = 9;

+    ASSERT_THROW (field.get(fieldBase, size), MamaStatus);

}

 TEST_F(MamaFieldCacheFieldTypesTest, testFromString)

--

1.8.3.1

 

PATCH:-   0004-Genereal-FieldCache-Improvements

From 92bb414af9ac0d7a9d6d4dd71e731aa9389925a0 Mon Sep 17 00:00:00 2001

From: Gary Molloy <gmolloy@...>

Date: Fri, 8 Aug 2014 12:07:11 +0100

Subject: [PATCH 4/4] Genereal FieldCache Improvements

 

General improvements to the fieldcache including the removal of dead code, spelling mistakes, white space, tabs etc...

[OMAMA-275 / OMAMA-276]

 

Signed-off-by: Gary Molloy <gmolloy@...>

---

mama/c_cpp/src/c/Makefile.am                       |  2 -

mama/c_cpp/src/c/SConscript                        |  2 -

mama/c_cpp/src/c/fieldcache/fieldcache.c           | 27 ++++----

mama/c_cpp/src/c/fieldcache/fieldcachefield.c      | 12 ++--

mama/c_cpp/src/c/fieldcache/fieldcachefieldimpl.c  | 18 +----

mama/c_cpp/src/c/fieldcache/fieldcachefieldimpl.h  | 20 ++----

mama/c_cpp/src/c/fieldcache/fieldcacheimpl.c       | 14 +---

mama/c_cpp/src/c/fieldcache/fieldcachelist.h       |  4 +-

mama/c_cpp/src/c/fieldcache/fieldcachemap.c        | 15 ----

mama/c_cpp/src/c/fieldcache/fieldcachemap.h        |  3 +-

mama/c_cpp/src/c/fieldcache/fieldcachemapbinary.c  | 79 ----------------------

mama/c_cpp/src/c/fieldcache/fieldcachemapbinary.h  | 72 --------------------

mama/c_cpp/src/c/fieldcache/fieldcachemapmonitor.c | 74 --------------------

mama/c_cpp/src/c/fieldcache/fieldcachemapmonitor.h | 64 ------------------

mama/c_cpp/src/c/mamac.vcproj                      | 16 -----

.../cpp/mama/fieldcache/MamaFieldCacheFieldTypes.h |  8 ---

16 files changed, 30 insertions(+), 400 deletions(-)

delete mode 100644 mama/c_cpp/src/c/fieldcache/fieldcachemapbinary.c

delete mode 100644 mama/c_cpp/src/c/fieldcache/fieldcachemapbinary.h

delete mode 100644 mama/c_cpp/src/c/fieldcache/fieldcachemapmonitor.c

delete mode 100644 mama/c_cpp/src/c/fieldcache/fieldcachemapmonitor.h

 

diff --git a/mama/c_cpp/src/c/Makefile.am b/mama/c_cpp/src/c/Makefile.am

index ab8b9ca..c831ce4 100644

--- a/mama/c_cpp/src/c/Makefile.am

+++ b/mama/c_cpp/src/c/Makefile.am

@@ -183,8 +183,6 @@ libmama_la_SOURCES = \

     fieldcache/fieldcachelist.c \

     fieldcache/fieldcachemap.c \

     fieldcache/fieldcachemaparray.c \

-    fieldcache/fieldcachemapbinary.c \

-    fieldcache/fieldcachemapmonitor.c \

     fieldcache/fieldcacheiterator.c \

     fieldcache/fieldcachefieldimpl.c \

     fieldcache/fieldcachefield.c \

diff --git a/mama/c_cpp/src/c/SConscript b/mama/c_cpp/src/c/SConscript

index 342bf9c..4362f50 100644

--- a/mama/c_cpp/src/c/SConscript

+++ b/mama/c_cpp/src/c/SConscript

@@ -156,8 +156,6 @@ libmama_sources = \

     fieldcache/fieldcachefield.c

     fieldcache/fieldcacheimpl.c

     fieldcache/fieldcachelist.c

-    fieldcache/fieldcachemapbinary.c

-    fieldcache/fieldcachemapmonitor.c

     fieldcache/fieldcachevector.c

""")

diff --git a/mama/c_cpp/src/c/fieldcache/fieldcache.c b/mama/c_cpp/src/c/fieldcache/fieldcache.c

index cc263cc..6374767 100644

--- a/mama/c_cpp/src/c/fieldcache/fieldcache.c

+++ b/mama/c_cpp/src/c/fieldcache/fieldcache.c

@@ -47,13 +47,13 @@ mama_status mamaFieldCache_create(mamaFieldCache* fieldCache)

     {

         return MAMA_STATUS_NULL_ARG;

     }

-   

+

     localCache = (mamaFieldCache)calloc(1, sizeof(mamaFieldCacheImpl));

     if(!localCache)

     {

         return MAMA_STATUS_NOMEM;

     }

-   

+

     localCache->mLock = wlock_create();

     propstring = properties_Get (mamaInternal_getProperties (), "mama.fieldcache.type");

@@ -275,13 +275,12 @@ mama_status mamaFieldCache_applyMessage(

     {

         if (!fieldCache->mCacheMsg)

         {

-                                              ret=mamaMsg_copy(message, &fieldCache->mCacheMsg);

+            ret=mamaMsg_copy(message, &fieldCache->mCacheMsg);

+        }

+        else

+        {

+            ret=mamaMsg_applyMsg(fieldCache->mCacheMsg, message);

         }

-                              else

-                              {

-              ret=mamaMsg_applyMsg(fieldCache->mCacheMsg, message);

-                             

-                              }             

         return ret;

     }

@@ -364,7 +363,7 @@ mama_status mamaFieldCache_getFullMessage(

     }

     mamaMsg_getNumFields(message, &numFields);

-    mamaFieldCacheIterator_create(&iterator, fieldCache);   

+    mamaFieldCacheIterator_create(&iterator, fieldCache);

     FIELD_CACHE_LOCK(fieldCache);

     while (mamaFieldCacheIterator_hasNext(iterator))

     {

@@ -377,7 +376,7 @@ mama_status mamaFieldCache_getFullMessage(

     }

     FIELD_CACHE_UNLOCK(fieldCache);

     mamaFieldCacheIterator_destroy(iterator);

-   

+

     return MAMA_STATUS_OK;

}

@@ -467,15 +466,15 @@ mama_status mamaFieldCache_setTrackModified(

     {

         return MAMA_STATUS_NULL_ARG;

     }

-              if (!fieldCache->mCachePayload)

+    if (!fieldCache->mCachePayload)

     {

-              fieldCache->mTrackModified = trackModified;

+        fieldCache->mTrackModified = trackModified;

     }

-              return MAMA_STATUS_OK;

+    return MAMA_STATUS_OK;

}

 mama_status mamaFieldCache_getTrackModified(

-    mamaFieldCache fieldCache,

+    mamaFieldCache fieldCache,

     mama_bool_t* trackModified)

{

     if (!fieldCache || !trackModified)

diff --git a/mama/c_cpp/src/c/fieldcache/fieldcachefield.c b/mama/c_cpp/src/c/fieldcache/fieldcachefield.c

index 62c7f11..43a3c05 100644

--- a/mama/c_cpp/src/c/fieldcache/fieldcachefield.c

+++ b/mama/c_cpp/src/c/fieldcache/fieldcachefield.c

@@ -124,11 +124,11 @@ mama_status mamaFieldCacheField_destroy(mamaFieldCacheField field)

                         (mamaFieldCacheVector)field->mData.data);

             }

             break;

-        default: /* something is wrong here */

+        default:

             break;

         }

     }

+

     free(field);

     return MAMA_STATUS_OK;

@@ -1178,7 +1178,7 @@ mama_status mamaFieldCacheField_setPrice(const mamaFieldCacheField field,

{

     mamaPrice price = NULL;

     void* old = NULL;

-   

+

     if (!field || !value)

     {

         return MAMA_STATUS_NULL_ARG;

@@ -1194,7 +1194,7 @@ mama_status mamaFieldCacheField_setPrice(const mamaFieldCacheField field,

         mamaFieldCacheField_setDataPointer(field, (void*)price, &old);

     }

     mamaPrice_copy((mamaPrice)field->mData.data, value);

-   

+

     return MAMA_STATUS_OK;

}

@@ -1203,7 +1203,7 @@ mama_status mamaFieldCacheField_setDateTime(const mamaFieldCacheField field,

{

     mamaDateTime dateTime = NULL;

     void* old = NULL;

-   

+

     if (!field || !value)

     {

         return MAMA_STATUS_NULL_ARG;

@@ -1219,7 +1219,7 @@ mama_status mamaFieldCacheField_setDateTime(const mamaFieldCacheField field,

         mamaFieldCacheField_setDataPointer(field, (void*)dateTime, &old);

     }

     mamaDateTime_copy((mamaDateTime)field->mData.data, value);

-   

+

     return MAMA_STATUS_OK;

}

diff --git a/mama/c_cpp/src/c/fieldcache/fieldcachefieldimpl.c b/mama/c_cpp/src/c/fieldcache/fieldcachefieldimpl.c

index d28d7c6..03a3412 100644

--- a/mama/c_cpp/src/c/fieldcache/fieldcachefieldimpl.c

+++ b/mama/c_cpp/src/c/fieldcache/fieldcachefieldimpl.c

@@ -25,23 +25,7 @@

#include <string.h> /* For memcpy */

 /* Private functions - not exposed through the API interface */

-/*

-mama_status mamaFieldCacheField_getData(

-        const mamaFieldCacheField field,

-        void** data,

-        mama_u32_t* size)

-{

-    if (!field)

-    {

-        return MAMA_STATUS_NULL_ARG;

-    }

-   

-    *data = field->mData;

-    *size = field->mDataSize;

-   

-    return MAMA_STATUS_OK;

-}

-*/

+

mama_status mamaFieldCacheField_setDataValue(mamaFieldCacheField field,

                                              const void* data,

                                              mama_size_t size)

diff --git a/mama/c_cpp/src/c/fieldcache/fieldcachefieldimpl.h b/mama/c_cpp/src/c/fieldcache/fieldcachefieldimpl.h

index f950802..80d65ac 100644

--- a/mama/c_cpp/src/c/fieldcache/fieldcachefieldimpl.h

+++ b/mama/c_cpp/src/c/fieldcache/fieldcachefieldimpl.h

@@ -57,17 +57,15 @@ typedef union cacheData_

 typedef struct mamaFieldCacheFieldImpl_

{

-    /* DO NOT CHANGE THE ORDER - IT CAN BREAK THE MEMORY ALIGNMENT */

-

     /* Field identification */

     mamaFieldType mType;  /* 4 bytes */

     mama_fid_t mFid;      /* 2 bytes */

     /* This flag specifies if the field must never be published (0) or can be

      * published (1)

-     */   

+     */

     mama_bool_t mPublish; /* 1 byte */

-   

+

    /* This flag specifies if the field should be checked for modifications (1)

      * to decide if it must be published

      */

@@ -84,25 +82,17 @@ typedef struct mamaFieldCacheFieldImpl_

      * If the type is an opaque then it will contain the number of bytes.

      */

     mama_size_t mVectorSize;

-   

+

     /* Pointer to a field descriptor - NO COPY */

     mamaFieldDescriptor mDescriptor;

     /* Explicit field name - overrides the field descriptor name */

     const char* mName;

-   

+

     /* The current modification state of the field. */

     mama_bool_t mIsModified; /* 1 byte */

} mamaFieldCacheFieldImpl;

-/* Get the pointer to the internal data and the size of the memory allocated */

-/*

-mama_status

-mamaFieldCacheField_getData(

-    const mamaFieldCacheField field,

-    void** data,

-    mama_u32_t* size);

-*/

/* Copy size byte starting at pointer data to field to the internal field data.

  * New memory is allocated with malloc and old one is freed with free (if needed).

  */

@@ -135,4 +125,4 @@ mamaFieldCacheField_destroyDateTimeVector(mamaFieldCacheVector dateTimeVector);

}

#endif

-#endif /* MamaFieldCacheFieldImplH__ */

+#endif  /* MamaFieldCacheFieldImplH__ */

diff --git a/mama/c_cpp/src/c/fieldcache/fieldcacheimpl.c b/mama/c_cpp/src/c/fieldcache/fieldcacheimpl.c

index 5d42b6d..48cbf20 100644

--- a/mama/c_cpp/src/c/fieldcache/fieldcacheimpl.c

+++ b/mama/c_cpp/src/c/fieldcache/fieldcacheimpl.c

@@ -274,20 +274,12 @@ mama_status mamaFieldCache_updateCacheFromMsgField(mamaFieldCache fieldCache,

         case MAMA_FIELD_TYPE_VECTOR_PRICE:

         {

             /* TODO: mamaMsgField does not provide methods to get price vector

-            const mamaPrice* values = NULL;

-            mama_size_t size;

-            mamaMsgField_getVectorPrice(messageField, &values, &size);

-            mamaFieldCacheField_setPriceVector(field, values, size);

              */

             break;

         }

         case MAMA_FIELD_TYPE_VECTOR_TIME:

         {

             /* TODO: mamaMsgField does not provide methods to get time vector

-            const mamaDateTime* values = NULL;

-            mama_size_t size;

-            mamaMsgField_getVectorDateTime(messageField, &values, &size);

-            mamaFieldCacheField_setDateTimeVector(field, values, size);

              */

             break;

         }

@@ -662,8 +654,7 @@ mama_status mamaFieldCache_updateMsgField(mamaFieldCache fieldCache,

             {

                 return MAMA_STATUS_INVALID_ARG;

             }

-            status = /*useUpdate ? mamaMsg_updateVectorPrice(message, name, fid, values, size)

-                               : */mamaMsg_addVectorPrice(message, name, fid, values, size);

+            status = mamaMsg_addVectorPrice(message, name, fid, values, size);

             break;

         }

         case MAMA_FIELD_TYPE_VECTOR_TIME:

@@ -675,8 +666,7 @@ mama_status mamaFieldCache_updateMsgField(mamaFieldCache fieldCache,

             {

                 return MAMA_STATUS_INVALID_ARG;

             }

-            status = /*useUpdate ? mamaMsg_updateVectorTime(message, name, fid, values, size)

-                               : */mamaMsg_addVectorDateTime(message, name, fid, values, size);

+            status = mamaMsg_addVectorDateTime(message, name, fid, values, size);

             break;

         }

         default:

diff --git a/mama/c_cpp/src/c/fieldcache/fieldcachelist.h b/mama/c_cpp/src/c/fieldcache/fieldcachelist.h

index b5950f8..8a270df 100644

--- a/mama/c_cpp/src/c/fieldcache/fieldcachelist.h

+++ b/mama/c_cpp/src/c/fieldcache/fieldcachelist.h

@@ -46,7 +46,7 @@ typedef mamaFieldCacheListImpl* mamaFieldCacheList;

/**

  * Create a generic list.

  *

- * @param lsit (out) The list to create.

+ * @param list (out) The list to create.

  * @return Result of the operation.

  */

mama_status

@@ -132,4 +132,4 @@ mamaFieldCacheList_getSize(mamaFieldCacheList list, mama_size_t* size);

}

#endif

-#endif /* MamaFieldCacheListH__ */

+#endif  /* MamaFieldCacheListH__ */

diff --git a/mama/c_cpp/src/c/fieldcache/fieldcachemap.c b/mama/c_cpp/src/c/fieldcache/fieldcachemap.c

index 0a399fd..2407ceb 100644

--- a/mama/c_cpp/src/c/fieldcache/fieldcachemap.c

+++ b/mama/c_cpp/src/c/fieldcache/fieldcachemap.c

@@ -21,17 +21,13 @@

 #include "fieldcachemap.h"

#include "fieldcachemaparray.h"

-#include "fieldcachemapbinary.h"

-#include "fieldcachemapmonitor.h"

#include <assert.h>

 const mamaFieldCacheMapType gMamaFieldCacheMapType = MAMAFIELDCACHE_MAP_MODE_ARRAY;

-const mama_bool_t gUseMamaFieldCacheMapMonitor = 0;

 mama_status mamaFieldCacheMap_create(mamaFieldCacheMap* map)

{

     mamaFieldCacheMap localMap = NULL;

-    mamaFieldCacheMap monitorMap = NULL;

     mama_status ret = MAMA_STATUS_NULL_ARG;

     assert(map);

@@ -42,22 +38,11 @@ mama_status mamaFieldCacheMap_create(mamaFieldCacheMap* map)

             ret = mamaFieldCacheMapArray_create(&localMap);

             break;

         case MAMAFIELDCACHE_MAP_MODE_BINARY:

-            ret = mamaFieldCacheMapBinary_create(&localMap);

             break;

         default:

             break;

     }

-    if(ret == MAMA_STATUS_OK && gUseMamaFieldCacheMapMonitor)

-    {

-        ret = mamaFieldCacheMapMonitor_create(&monitorMap, localMap);

-        if(ret == MAMA_STATUS_OK)

-        {

-            localMap = monitorMap;

-        }

-        /* If something went wrong, go on without the monitor */

-    }

-

     /* Return the map. */

     *map = localMap;

diff --git a/mama/c_cpp/src/c/fieldcache/fieldcachemap.h b/mama/c_cpp/src/c/fieldcache/fieldcachemap.h

index 286e781..16be477 100644

--- a/mama/c_cpp/src/c/fieldcache/fieldcachemap.h

+++ b/mama/c_cpp/src/c/fieldcache/fieldcachemap.h

@@ -83,8 +83,7 @@ typedef enum

} mamaFieldCacheMapType;

 extern const mamaFieldCacheMapType gMamaFieldCacheMapType;

-extern const mama_bool_t gUseMamaFieldCacheMapMonitor;

-       

+

mama_status

mamaFieldCacheMap_create(mamaFieldCacheMap* map);

diff --git a/mama/c_cpp/src/c/fieldcache/fieldcachemapbinary.c b/mama/c_cpp/src/c/fieldcache/fieldcachemapbinary.c

deleted file mode 100644

index 8014312..0000000

--- a/mama/c_cpp/src/c/fieldcache/fieldcachemapbinary.c

+++ /dev/null

@@ -1,79 +0,0 @@

-/* $Id$

- *

- * OpenMAMA: The open middleware agnostic messaging API

- * Copyright (C) 2011 NYSE Technologies, Inc.

- *

- * This library is free software; you can redistribute it and/or

- * modify it under the terms of the GNU Lesser General Public

- * License as published by the Free Software Foundation; either

- * version 2.1 of the License, or (at your option) any later version.

- *

- * This library is distributed in the hope that it will be useful,

- * but WITHOUT ANY WARRANTY; without even the implied warranty of

- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU

- * Lesser General Public License for more details.

- *

- * You should have received a copy of the GNU Lesser General Public

- * License along with this library; if not, write to the Free Software

- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA

- * 02110-1301 USA

- */

-

-#include "fieldcachemapbinary.h"

-

-mama_status mamaFieldCacheMapBinary_create(mamaFieldCacheMap* map)

-{

-    return MAMA_STATUS_NOT_IMPLEMENTED;

-}

-

-mama_status mamaFieldCacheMapBinary_destroy(mamaFieldCacheMap map)

-{

-    return MAMA_STATUS_NOT_IMPLEMENTED;

-}

-

-mama_status mamaFieldCacheMapBinary_add(mamaFieldCacheMap map,

-                                        mamaFieldCacheField field)

-{

-    return MAMA_STATUS_NOT_IMPLEMENTED;

-}

-

-mama_status mamaFieldCacheMapBinary_find(mamaFieldCacheMap map,

-                                         mama_fid_t fid,

-                                         mamaFieldType type,

-                                         const char* name,

-                                         mamaFieldCacheField* field)

-{

-    return MAMA_STATUS_NOT_IMPLEMENTED;

-}

-

-mama_status mamaFieldCacheMapBinary_clear(mamaFieldCacheMap map)

-{

-    return MAMA_STATUS_NOT_IMPLEMENTED;

-}

-

-/* Iterator */

-mama_status mamaFieldCacheMapIteratorBinary_create(mamaFieldCacheIterator* iterator,

-                                                   mamaFieldCacheMap map)

-{

-    return MAMA_STATUS_NOT_IMPLEMENTED;

-}

-

-mama_status mamaFieldCacheMapIteratorBinary_destroy(mamaFieldCacheIterator iterator)

-{

-    return MAMA_STATUS_NOT_IMPLEMENTED;

-}

-

-mamaFieldCacheField mamaFieldCacheMapIteratorBinary_next(mamaFieldCacheIterator iterator)

-{

-    return NULL;

-}

-

-mama_bool_t mamaFieldCacheMapIteratorBinary_hasNext(mamaFieldCacheIterator iterator)

-{

-    return MAMA_STATUS_NOT_IMPLEMENTED;

-}

-

-mamaFieldCacheField mamaFieldCacheMapIteratorBinary_begin(mamaFieldCacheIterator iterator)

-{

-    return NULL;

-}

diff --git a/mama/c_cpp/src/c/fieldcache/fieldcachemapbinary.h b/mama/c_cpp/src/c/fieldcache/fieldcachemapbinary.h

deleted file mode 100644

index f91a9d6..0000000

--- a/mama/c_cpp/src/c/fieldcache/fieldcachemapbinary.h

+++ /dev/null

@@ -1,72 +0,0 @@

-/* $Id$

- *

- * OpenMAMA: The open middleware agnostic messaging API

- * Copyright (C) 2011 NYSE Technologies, Inc.

- *

- * This library is free software; you can redistribute it and/or

- * modify it under the terms of the GNU Lesser General Public

- * License as published by the Free Software Foundation; either

- * version 2.1 of the License, or (at your option) any later version.

- *

- * This library is distributed in the hope that it will be useful,

- * but WITHOUT ANY WARRANTY; without even the implied warranty of

- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU

- * Lesser General Public License for more details.

- *

- * You should have received a copy of the GNU Lesser General Public

- * License along with this library; if not, write to the Free Software

- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA

- * 02110-1301 USA

- */

-

-#ifndef MamaFieldCacheMapBinaryH__

-#define MamaFieldCacheMapBinaryH__

-

-#include "fieldcachemap.h"

-

-#if defined( __cplusplus )

-extern "C" {

-#endif /* defined( __cplusplus ) */

-

-typedef struct mamaFieldCacheMapBinaryImpl_

-{

-    /* The base structure must appear first. */

-    mamaFieldCacheMapImpl mBaseMap;

-

-} mamaFieldCacheMapBinaryImpl;

-

-typedef struct mamaFieldCacheMapBinaryImpl_* mamaFieldCacheMapBinary;

-

-/* Map */

-mama_status mamaFieldCacheMapBinary_create(mamaFieldCacheMap* map);

-

-mama_status mamaFieldCacheMapBinary_destroy(mamaFieldCacheMap map);

-

-mama_status mamaFieldCacheMapBinary_add(mamaFieldCacheMap map,

-                                        mamaFieldCacheField field);

-

-mama_status mamaFieldCacheMapBinary_find(mamaFieldCacheMap map,

-                                         mama_fid_t fid,

-                                         mamaFieldType type,

-                                         const char* name,

-                                         mamaFieldCacheField* field);

-

-mama_status mamaFieldCacheMapBinary_clear(mamaFieldCacheMap map);

-

-/* Iterator */

-mama_status mamaFieldCacheMapIteratorBinary_create(mamaFieldCacheIterator* iterator,

-                                                   mamaFieldCacheMap map);

-

-mama_status mamaFieldCacheMapIteratorBinary_destroy(mamaFieldCacheIterator iterator);

-

-mamaFieldCacheField mamaFieldCacheMapIteratorBinary_next(mamaFieldCacheIterator iterator);

-

-mama_bool_t mamaFieldCacheMapIteratorBinary_hasNext(mamaFieldCacheIterator iterator);

-

-mamaFieldCacheField mamaFieldCacheMapIteratorBinary_begin(mamaFieldCacheIterator iterator);

-

-#if defined( __cplusplus )

-}

-#endif /* defined( __cplusplus ) */

-

-#endif /* MamaFieldCacheMapBinaryH__ */

diff --git a/mama/c_cpp/src/c/fieldcache/fieldcachemapmonitor.c b/mama/c_cpp/src/c/fieldcache/fieldcachemapmonitor.c

deleted file mode 100644

index 5c942a2..0000000

--- a/mama/c_cpp/src/c/fieldcache/fieldcachemapmonitor.c

+++ /dev/null

@@ -1,74 +0,0 @@

-/* $Id$

- *

- * OpenMAMA: The open middleware agnostic messaging API

- * Copyright (C) 2011 NYSE Technologies, Inc.

- *

- * This library is free software; you can redistribute it and/or

- * modify it under the terms of the GNU Lesser General Public

- * License as published by the Free Software Foundation; either

- * version 2.1 of the License, or (at your option) any later version.

- *

- * This library is distributed in the hope that it will be useful,

- * but WITHOUT ANY WARRANTY; without even the implied warranty of

- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU

- * Lesser General Public License for more details.

- *

- * You should have received a copy of the GNU Lesser General Public

- * License along with this library; if not, write to the Free Software

- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA

- * 02110-1301 USA

- */

-

-#include "fieldcachemapmonitor.h"

-

-mama_status mamaFieldCacheMapMonitor_create(mamaFieldCacheMap* map,

-                                            mamaFieldCacheMap originalMap)

-{

-    mamaFieldCacheMapMonitor mapMonitor =

-             (mamaFieldCacheMapMonitor)calloc(1, sizeof(mamaFieldCacheMapMonitorImpl));

-

-              if(map == NULL)

-    {

-        return MAMA_STATUS_INVALID_ARG;

-    }

-             

-    if(mapMonitor == NULL)

-    {

-        return MAMA_STATUS_NOMEM;

-    }

-

-    mapMonitor->mOriginalMap = originalMap;

-    *map = (mamaFieldCacheMap)mapMonitor;

-    return MAMA_STATUS_OK;

-}

-

-mama_status mamaFieldCacheMapMonitor_destroy(mamaFieldCacheMap map)

-{

-    mamaFieldCacheMapMonitor mapMonitor = (mamaFieldCacheMapMonitor)map;

-    mamaFieldCacheMap_destroy(mapMonitor->mOriginalMap);

-    free(mapMonitor);

-    return MAMA_STATUS_OK;

-}

-

-mama_status mamaFieldCacheMapMonitor_clear(mamaFieldCacheMap map)

-{

-    mamaFieldCacheMapMonitor mapMonitor = (mamaFieldCacheMapMonitor)map;

-    return mamaFieldCacheMap_clear(mapMonitor->mOriginalMap);

-}

-

-mama_status mamaFieldCacheMapMonitor_add(mamaFieldCacheMap map,

-                                         mamaFieldCacheField field)

-{

-    mamaFieldCacheMapMonitor mapMonitor = (mamaFieldCacheMapMonitor)map;

-    return mamaFieldCacheMap_add(mapMonitor->mOriginalMap, field);

-}

-

-mama_status mamaFieldCacheMapMonitor_find(mamaFieldCacheMap map,

-                                          mama_fid_t fid,

-                                          mamaFieldType type,

-                                          const char* name,

-                                          mamaFieldCacheField* field)

-{

-    mamaFieldCacheMapMonitor mapMonitor = (mamaFieldCacheMapMonitor)map;

-    return mamaFieldCacheMap_find(mapMonitor->mOriginalMap, fid, type, name, field);

-}

diff --git a/mama/c_cpp/src/c/fieldcache/fieldcachemapmonitor.h b/mama/c_cpp/src/c/fieldcache/fieldcachemapmonitor.h

deleted file mode 100644

index 62e152f..0000000

--- a/mama/c_cpp/src/c/fieldcache/fieldcachemapmonitor.h

+++ /dev/null

@@ -1,64 +0,0 @@

-/* $Id$

- *

- * OpenMAMA: The open middleware agnostic messaging API

- * Copyright (C) 2011 NYSE Technologies, Inc.

- *

- * This library is free software; you can redistribute it and/or

- * modify it under the terms of the GNU Lesser General Public

- * License as published by the Free Software Foundation; either

- * version 2.1 of the License, or (at your option) any later version.

- *

- * This library is distributed in the hope that it will be useful,

- * but WITHOUT ANY WARRANTY; without even the implied warranty of

- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU

- * Lesser General Public License for more details.

- *

- * You should have received a copy of the GNU Lesser General Public

- * License along with this library; if not, write to the Free Software

- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA

- * 02110-1301 USA

- */

-

-#ifndef MamaFieldCacheMapMonitorH__

-#define MamaFieldCacheMapMonitorH__

-

-#include "fieldcachemap.h"

-

-#if defined( __cplusplus )

-extern "C" {

-#endif /* defined( __cplusplus ) */

-

-typedef struct mamaFieldCacheMapMonitorImpl_

-{

-    /* The base structure must appear first. */

-    mamaFieldCacheMapImpl mBaseMap;

-    mamaFieldCacheMap mOriginalMap;

-} mamaFieldCacheMapMonitorImpl;

-

-typedef struct mamaFieldCacheMapMonitorImpl_* mamaFieldCacheMapMonitor;

-

-/* map will take ownership of originalMap; it will be destroyed when calling

- * mamaFieldCacheMapMonitor_destroy

- */

-mama_status mamaFieldCacheMapMonitor_create(mamaFieldCacheMap* map,

-                                            mamaFieldCacheMap originalMap);

-

-/* This function will also destroy the original map */

-mama_status mamaFieldCacheMapMonitor_destroy(mamaFieldCacheMap map);

-

-mama_status mamaFieldCacheMapMonitor_clear(mamaFieldCacheMap map);

-

-mama_status mamaFieldCacheMapMonitor_add(mamaFieldCacheMap map,

-                                         mamaFieldCacheField field);

-

-mama_status mamaFieldCacheMapMonitor_find(mamaFieldCacheMap map,

-                                          mama_fid_t fid,

-                                          mamaFieldType type,

-                                          const char* name,

-                                          mamaFieldCacheField* field);

-

-#if defined( __cplusplus )

-}

-#endif /* defined( __cplusplus ) */

-

-#endif /* MamaFieldCacheMapMonitorH__ */

diff --git a/mama/c_cpp/src/c/mamac.vcproj b/mama/c_cpp/src/c/mamac.vcproj

index f92aff0..3958967 100644

--- a/mama/c_cpp/src/c/mamac.vcproj

+++ b/mama/c_cpp/src/c/mamac.vcproj

@@ -398,18 +398,10 @@

                                                               >

                                               </File>

                                               <File

-                                                              RelativePath=".\fieldcache\fieldcachemapbinary.c"

-                                                              >

-                                              </File>

-                                              <File

                                                               RelativePath=".\fieldcache\fieldcachemap.c"

                                                               >

                                               </File>

                                               <File

-                                                              RelativePath=".\fieldcache\fieldcachemapmonitor.c"

-                                                              >

-                                              </File>

-                                              <File

                                                               RelativePath=".\fieldcache\fieldcacherecord.c"

                                                               >

                                               </File>

@@ -728,14 +720,6 @@

                                                               >

                                               </File>

                                               <File

-                                                              RelativePath=".\fieldcache\fieldcachemapmonitor.h"

-                                                              >

-                                              </File>

-                                              <File

-                                                              RelativePath=".\fieldcache\fieldcachemapbinary.h"

-                                                              >

-                                              </File>

-                                              <File

                                                               RelativePath=".\fieldcache\fieldcachemaparray.h"

                                                               >

                                               </File>

diff --git a/mama/c_cpp/src/cpp/mama/fieldcache/MamaFieldCacheFieldTypes.h b/mama/c_cpp/src/cpp/mama/fieldcache/MamaFieldCacheFieldTypes.h

index 30242f7..79c8713 100644

--- a/mama/c_cpp/src/cpp/mama/fieldcache/MamaFieldCacheFieldTypes.h

+++ b/mama/c_cpp/src/cpp/mama/fieldcache/MamaFieldCacheFieldTypes.h

@@ -535,14 +535,6 @@ void setFieldValue(MamaFieldCacheField& field, const MamaPrice& value);

  */

void setFieldValue(MamaFieldCacheField& field, const MamaDateTime& value);

-/*

-template <class Field, class Value>

-void setFieldValue(MamaFieldCacheField& field, const Value& value)

-{

-    Field setField;

-    setField.set(field, value);

-}

-*/

 template <mamaFieldType fieldType>

class Type

--

1.8.3.1

 


This message may contain confidential information and is intended for specific recipients unless explicitly noted otherwise. If you have reason to believe you are not an intended recipient of this message, please delete it and notify the sender. This message may not represent the opinion of Intercontinental Exchange, Inc. (ICE), Euronext or any of their subsidiaries or affiliates, and does not constitute a contract or guarantee. Unencrypted electronic mail is not secure and the recipient of this message is expected to provide safeguards from viruses and pursue alternate means of communication where privacy or a binding message is desired.