Index: /trunk/psLib/src/types/psMetadataConfig.c
===================================================================
--- /trunk/psLib/src/types/psMetadataConfig.c	(revision 5006)
+++ /trunk/psLib/src/types/psMetadataConfig.c	(revision 5007)
@@ -10,6 +10,6 @@
 *  @author Eric Van Alst, MHPCC
 *
-*  @version $Revision: 1.39 $ $Name: not supported by cvs2svn $
-*  @date $Date: 2005-09-09 01:11:23 $
+*  @version $Revision: 1.40 $ $Name: not supported by cvs2svn $
+*  @date $Date: 2005-09-12 23:04:59 $
 *
 *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -1185,5 +1185,7 @@
         if ( type == 65538)
             type = PS_DATA_VECTOR;
-        if ( type == 65547)
+        if ( type == 65549)
+            type = PS_DATA_TIME;
+        if ( item->type == PS_META_META)
             type = PS_DATA_METADATA;
 
@@ -1287,4 +1289,38 @@
             }
             psFree(newStr);
+            break;
+        case PS_DATA_TIME:
+            snprintf(content, MAXSTR, "%s ", item->name);
+            if ( ((psTime*)(item->data.V))->type == PS_TIME_UTC )
+                strncat(content, "PS_TIME_UTC  ", MAXSTR);
+            else if ( ((psTime*)(item->data.V))->type == PS_TIME_TAI )
+                strncat(content, "PS_TIME_TAI  ", MAXSTR);
+            else if ( ((psTime*)(item->data.V))->type == PS_TIME_UT1 )
+                strncat(content, "PS_TIME_UT1  ", MAXSTR);
+            else if ( ((psTime*)(item->data.V))->type == PS_TIME_TT )
+                strncat(content, "PS_TIME_TT  ", MAXSTR);
+            else {
+                psError(PS_ERR_BAD_PARAMETER_VALUE, true,
+                        PS_ERRORTEXT_psMetadata_METATYPE_INVALID, type);
+                psFree(iter);
+                return NULL;
+            }
+            strncat(mdString, content, MAXSTR);
+
+            snprintf(content, MAXSTR, "%ld, ", ((psTime*)(item->data.V))->sec);
+            strncat(mdString, content, MAXSTR);
+            snprintf(content, MAXSTR, "%u, ", ((psTime*)(item->data.V))->nsec);
+            strncat(mdString, content, MAXSTR);
+            if ( ((psTime*)(item->data.V))->leapsecond )
+                strncat(mdString, "T ", MAXSTR);
+            else
+                strncat(mdString, "F ", MAXSTR);
+            if ( item->comment != NULL ) {
+                snprintf(content, MAXSTR, " #%s \n", item->comment);
+                strncat(mdString, content, MAXSTR);
+            } else {
+                snprintf(content, MAXSTR, "\n");
+                strncat(mdString, content, MAXSTR);
+            }
             break;
         case PS_DATA_VECTOR:
Index: /trunk/psLib/test/types/tst_psMetadata_07.c
===================================================================
--- /trunk/psLib/test/types/tst_psMetadata_07.c	(revision 5006)
+++ /trunk/psLib/test/types/tst_psMetadata_07.c	(revision 5007)
@@ -12,6 +12,6 @@
 *  @author  David Robbins, MHPCC
 *
-*  @version $Revision: 1.6 $  $Name: not supported by cvs2svn $
-*  @date  $Date: 2005-08-27 01:33:41 $
+*  @version $Revision: 1.7 $  $Name: not supported by cvs2svn $
+*  @date  $Date: 2005-09-12 23:05:00 $
 *
 *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -39,11 +39,16 @@
     psVector *vec = NULL;
     psMetadata *newMD = NULL;
+    psTime *time;
     int i = 0;
     md = psMetadataAlloc();
     newMD = psMetadataAlloc();
     vec = psVectorAlloc(60, PS_DATA_S32);
+    time = psTimeAlloc(PS_TIME_TAI);
     for (i = 0; i < 5; i++) {
         vec->data.S32[i] = i+1;
     }
+    time->sec = 1000;
+    time->nsec = 25;
+    time->leapsecond = true;
     psMetadataAddBool(md, PS_LIST_TAIL, "item1", 0, "I am a boolean", true);
     psMetadataAddS32(md, PS_LIST_TAIL, "item2", 0, "I am a integer", 55);
@@ -52,4 +57,5 @@
     psMetadataAddStr(md, PS_LIST_TAIL, "item5", 0, "I am a string", "GNIRTS");
     psMetadataAddVector(md, PS_LIST_TAIL, "vector6", 0, "I am a vector", vec);
+    psMetadataAddTime(md, PS_LIST_TAIL, "time01", 0, "I am time", time);
 
     psMetadataAddS32(newMD, PS_LIST_TAIL, "ITEM01", 0, "I AM INT", 666);
@@ -63,5 +69,5 @@
 
     psMetadataAddMetadata(md, PS_LIST_TAIL, "metadata7", 0, "I am a metadata", newMD);
-
+    psFree(time);
     psFree(newestMD);
     psFree(vec);
