[mapserver-commits] r10965 - trunk/mapserver/mapscript/php

svn at osgeo.org svn at osgeo.org
Mon Feb 7 13:24:41 EST 2011


Author: aboudreault
Date: 2011-02-07 10:24:41 -0800 (Mon, 07 Feb 2011)
New Revision: 10965

Added:
   trunk/mapserver/mapscript/php/result.c
Removed:
   trunk/mapserver/mapscript/php/resultcachemember.c
Log:
removed cachemember and added result object in php

Added: trunk/mapserver/mapscript/php/result.c
===================================================================
--- trunk/mapserver/mapscript/php/result.c	                        (rev 0)
+++ trunk/mapserver/mapscript/php/result.c	2011-02-07 18:24:41 UTC (rev 10965)
@@ -0,0 +1,170 @@
+/**********************************************************************
+ * $Id: php_mapscript.c 9765 2010-01-28 15:32:10Z aboudreault $
+ *
+ * Project:  MapServer
+ * Purpose:  PHP/MapScript extension for MapServer.  External interface 
+ *           functions
+ * Author:   Daniel Morissette, DM Solutions Group (dmorissette at dmsolutions.ca)
+ *           Alan Boudreault, Mapgears
+ *
+ **********************************************************************
+ * Copyright (c) 2000-2010, Daniel Morissette, DM Solutions Group Inc.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in 
+ * all copies of this Software or works derived from this Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 
+ * DEALINGS IN THE SOFTWARE.
+ **********************************************************************/
+
+#include "php_mapscript.h"
+
+zend_class_entry *mapscript_ce_result;
+
+ZEND_BEGIN_ARG_INFO_EX(result___get_args, 0, 0, 1)
+  ZEND_ARG_INFO(0, property)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(result___set_args, 0, 0, 2)
+  ZEND_ARG_INFO(0, property)
+  ZEND_ARG_INFO(0, value)
+ZEND_END_ARG_INFO()
+
+/* {{{ proto resultObj __construct()
+   resultObj CANNOT be instanciated, this will throw an exception on use */
+PHP_METHOD(resultObj, __construct)
+{
+    mapscript_throw_exception("resultObj cannot be constructed" TSRMLS_CC);
+}
+/* }}} */
+
+PHP_METHOD(resultObj, __get)
+{
+    char *property;
+    long property_len;
+    zval *zobj = getThis();
+    php_result_object *php_result;
+
+    PHP_MAPSCRIPT_ERROR_HANDLING(TRUE);
+    if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s",
+                              &property, &property_len) == FAILURE) {
+        PHP_MAPSCRIPT_RESTORE_ERRORS(TRUE);
+        return;
+    }
+    PHP_MAPSCRIPT_RESTORE_ERRORS(TRUE);
+    
+    php_result = (php_result_object *) zend_object_store_get_object(zobj TSRMLS_CC);
+
+    IF_GET_LONG("shapeindex", php_result->result->shapeindex)
+    else IF_GET_LONG("tileindex", php_result->result->tileindex)
+    else IF_GET_LONG("classindex", php_result->result->classindex)
+    else IF_GET_LONG("resultindex", php_result->result->resultindex)
+    else 
+    {
+        mapscript_throw_exception("Property '%s' does not exist in this object." TSRMLS_CC, property);
+    }
+}
+
+PHP_METHOD(resultObj, __set)
+{
+    char *property;
+    long property_len;
+    zval *value;
+    zval *zobj = getThis();
+    php_result_object *php_result;
+
+    PHP_MAPSCRIPT_ERROR_HANDLING(TRUE);
+    if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "sz",
+                              &property, &property_len, &value) == FAILURE) {
+        PHP_MAPSCRIPT_RESTORE_ERRORS(TRUE);
+        return;
+    }
+    PHP_MAPSCRIPT_RESTORE_ERRORS(TRUE);
+    
+    php_result = (php_result_object *) zend_object_store_get_object(zobj TSRMLS_CC);
+
+    if ( (STRING_EQUAL("shapeindex", property)) ||
+         (STRING_EQUAL("tileindex", property)) ||
+         (STRING_EQUAL("resultindex", property)) ||
+         (STRING_EQUAL("classindex", property)))
+    {
+        mapscript_throw_exception("Property '%s' is an object and can only be modified through its accessors." TSRMLS_CC, property);
+    }
+    else 
+    {
+        mapscript_throw_exception("Property '%s' does not exist in this object." TSRMLS_CC, property);
+    }
+}
+
+zend_function_entry result_functions[] = {
+    PHP_ME(resultObj, __construct, NULL, ZEND_ACC_PUBLIC|ZEND_ACC_CTOR)
+    PHP_ME(resultObj, __get, result___get_args, ZEND_ACC_PUBLIC)
+    PHP_ME(resultObj, __set, result___set_args, ZEND_ACC_PUBLIC)
+    {NULL, NULL, NULL}
+};
+
+void mapscript_create_result(resultObj *result, parent_object parent,
+                                        zval *return_value TSRMLS_DC)
+{
+    php_result_object * php_result;
+    object_init_ex(return_value, mapscript_ce_result); 
+    php_result = (php_result_object *)zend_object_store_get_object(return_value TSRMLS_CC);
+    php_result->result = result;
+
+    php_result->parent = parent;
+    MAPSCRIPT_ADDREF(parent.val);
+}
+
+static void mapscript_result_object_destroy(void *object TSRMLS_DC)
+{
+    php_result_object *php_result = (php_result_object *)object;
+
+    MAPSCRIPT_FREE_OBJECT(php_result);
+
+    MAPSCRIPT_FREE_PARENT(php_result->parent);
+
+    /* We don't need to free the resultObj */ 
+    
+    efree(object);
+}
+
+static zend_object_value mapscript_result_object_new(zend_class_entry *ce TSRMLS_DC)
+{
+    zend_object_value retval;
+    php_result_object *php_result;
+
+    MAPSCRIPT_ALLOC_OBJECT(php_result, php_result_object);
+
+    retval = mapscript_object_new(&php_result->std, ce,
+                                  &mapscript_result_object_destroy TSRMLS_CC);
+
+    MAPSCRIPT_INIT_PARENT(php_result->parent);
+
+    return retval;
+}
+
+PHP_MINIT_FUNCTION(result)
+{
+    zend_class_entry ce;
+
+    MAPSCRIPT_REGISTER_CLASS("resultObj", 
+                             result_functions,
+                             mapscript_ce_result,
+                             mapscript_result_object_new);
+
+    mapscript_ce_result->ce_flags |= ZEND_ACC_FINAL_CLASS; 
+    
+    return SUCCESS;
+}

Deleted: trunk/mapserver/mapscript/php/resultcachemember.c
===================================================================
--- trunk/mapserver/mapscript/php/resultcachemember.c	2011-02-07 17:26:59 UTC (rev 10964)
+++ trunk/mapserver/mapscript/php/resultcachemember.c	2011-02-07 18:24:41 UTC (rev 10965)
@@ -1,168 +0,0 @@
-/**********************************************************************
- * $Id: php_mapscript.c 9765 2010-01-28 15:32:10Z aboudreault $
- *
- * Project:  MapServer
- * Purpose:  PHP/MapScript extension for MapServer.  External interface 
- *           functions
- * Author:   Daniel Morissette, DM Solutions Group (dmorissette at dmsolutions.ca)
- *           Alan Boudreault, Mapgears
- *
- **********************************************************************
- * Copyright (c) 2000-2010, Daniel Morissette, DM Solutions Group Inc.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- * 
- * The above copyright notice and this permission notice shall be included in 
- * all copies of this Software or works derived from this Software.
- * 
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 
- * DEALINGS IN THE SOFTWARE.
- **********************************************************************/
-
-#include "php_mapscript.h"
-
-zend_class_entry *mapscript_ce_resultcachemember;
-
-ZEND_BEGIN_ARG_INFO_EX(resultcachemember___get_args, 0, 0, 1)
-  ZEND_ARG_INFO(0, property)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(resultcachemember___set_args, 0, 0, 2)
-  ZEND_ARG_INFO(0, property)
-  ZEND_ARG_INFO(0, value)
-ZEND_END_ARG_INFO()
-
-/* {{{ proto resultCacheMemberObj __construct()
-   resultCacheMemberObj CANNOT be instanciated, this will throw an exception on use */
-PHP_METHOD(resultCacheMemberObj, __construct)
-{
-    mapscript_throw_exception("resultCacheMemberObj cannot be constructed" TSRMLS_CC);
-}
-/* }}} */
-
-PHP_METHOD(resultCacheMemberObj, __get)
-{
-    char *property;
-    long property_len;
-    zval *zobj = getThis();
-    php_resultcachemember_object *php_resultcachemember;
-
-    PHP_MAPSCRIPT_ERROR_HANDLING(TRUE);
-    if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s",
-                              &property, &property_len) == FAILURE) {
-        PHP_MAPSCRIPT_RESTORE_ERRORS(TRUE);
-        return;
-    }
-    PHP_MAPSCRIPT_RESTORE_ERRORS(TRUE);
-    
-    php_resultcachemember = (php_resultcachemember_object *) zend_object_store_get_object(zobj TSRMLS_CC);
-
-    IF_GET_LONG("shapeindex", php_resultcachemember->resultcachemember->shapeindex)
-    else IF_GET_LONG("tileindex", php_resultcachemember->resultcachemember->tileindex)
-    else IF_GET_LONG("classindex", php_resultcachemember->resultcachemember->classindex)
-    else 
-    {
-        mapscript_throw_exception("Property '%s' does not exist in this object." TSRMLS_CC, property);
-    }
-}
-
-PHP_METHOD(resultCacheMemberObj, __set)
-{
-    char *property;
-    long property_len;
-    zval *value;
-    zval *zobj = getThis();
-    php_resultcachemember_object *php_resultcachemember;
-
-    PHP_MAPSCRIPT_ERROR_HANDLING(TRUE);
-    if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "sz",
-                              &property, &property_len, &value) == FAILURE) {
-        PHP_MAPSCRIPT_RESTORE_ERRORS(TRUE);
-        return;
-    }
-    PHP_MAPSCRIPT_RESTORE_ERRORS(TRUE);
-    
-    php_resultcachemember = (php_resultcachemember_object *) zend_object_store_get_object(zobj TSRMLS_CC);
-
-    if ( (STRING_EQUAL("shapeindex", property)) ||
-         (STRING_EQUAL("tileindex", property)) ||
-         (STRING_EQUAL("classindex", property)))
-    {
-        mapscript_throw_exception("Property '%s' is an object and can only be modified through its accessors." TSRMLS_CC, property);
-    }
-    else 
-    {
-        mapscript_throw_exception("Property '%s' does not exist in this object." TSRMLS_CC, property);
-    }
-}
-
-zend_function_entry resultcachemember_functions[] = {
-    PHP_ME(resultCacheMemberObj, __construct, NULL, ZEND_ACC_PUBLIC|ZEND_ACC_CTOR)
-    PHP_ME(resultCacheMemberObj, __get, resultcachemember___get_args, ZEND_ACC_PUBLIC)
-    PHP_ME(resultCacheMemberObj, __set, resultcachemember___set_args, ZEND_ACC_PUBLIC)
-    {NULL, NULL, NULL}
-};
-
-void mapscript_create_resultcachemember(resultCacheMemberObj *resultcachemember, parent_object parent,
-                                        zval *return_value TSRMLS_DC)
-{
-    php_resultcachemember_object * php_resultcachemember;
-    object_init_ex(return_value, mapscript_ce_resultcachemember); 
-    php_resultcachemember = (php_resultcachemember_object *)zend_object_store_get_object(return_value TSRMLS_CC);
-    php_resultcachemember->resultcachemember = resultcachemember;
-
-    php_resultcachemember->parent = parent;
-    MAPSCRIPT_ADDREF(parent.val);
-}
-
-static void mapscript_resultcachemember_object_destroy(void *object TSRMLS_DC)
-{
-    php_resultcachemember_object *php_resultcachemember = (php_resultcachemember_object *)object;
-
-    MAPSCRIPT_FREE_OBJECT(php_resultcachemember);
-
-    MAPSCRIPT_FREE_PARENT(php_resultcachemember->parent);
-
-    /* We don't need to free the resultCacheMemberObj */ 
-    
-    efree(object);
-}
-
-static zend_object_value mapscript_resultcachemember_object_new(zend_class_entry *ce TSRMLS_DC)
-{
-    zend_object_value retval;
-    php_resultcachemember_object *php_resultcachemember;
-
-    MAPSCRIPT_ALLOC_OBJECT(php_resultcachemember, php_resultcachemember_object);
-
-    retval = mapscript_object_new(&php_resultcachemember->std, ce,
-                                  &mapscript_resultcachemember_object_destroy TSRMLS_CC);
-
-    MAPSCRIPT_INIT_PARENT(php_resultcachemember->parent);
-
-    return retval;
-}
-
-PHP_MINIT_FUNCTION(resultcachemember)
-{
-    zend_class_entry ce;
-
-    MAPSCRIPT_REGISTER_CLASS("resultCacheMemberObj", 
-                             resultcachemember_functions,
-                             mapscript_ce_resultcachemember,
-                             mapscript_resultcachemember_object_new);
-
-    mapscript_ce_resultcachemember->ce_flags |= ZEND_ACC_FINAL_CLASS; 
-    
-    return SUCCESS;
-}



More information about the mapserver-commits mailing list