MS RFC 53:MAPScript方法返回值指南

日期

2009年3月8日

作者

丹尼尔·莫里塞特

联系

在mapgears.com的dmorissette

最后编辑

2009年3月8日

状态

2009/03/12通过

版本

MAPServer 5.4

概述

Ticket 244指出,mapscript方法的返回值不一致:有些方法返回0/-1表示成功/失败,另一些方法返回ms成功/ms失败。

这个小型的RFC定义了在将来与mapscript方法一起使用的返回值的准则。

技术解决方案

现有方法将保持不变,以避免破坏现有的mapscript应用程序。

对于将来添加到mapscript API的新方法,应适用以下准则:

  1. 返回值:

  • 如果该方法只返回成功/失败状态,则应使用ms-success/ms-failure值。

  • 如果该方法返回对对象的引用,那么它应该在成功时返回一个有效的对象,或者在失败时返回一个空值。

  • 如果方法返回一个正整数,那么它应该在成功时返回一个正整数,在失败时返回-1。这是一个灵活的规则,在某些情况下可能不适用。

  1. 错误报告:

如果出现错误/失败,mapscript开发人员应该确保mapscript应用程序代码可以在错误堆栈中找到一个errorobj。在大多数情况下,mapscript映射到的核心函数应该负责调用mssterror(),但在某些情况下,错误可能被包装代码捕获,然后包装代码可能负责在无法确保调用方具有有效的错误信息时调用mssterror()。

向后兼容性问题

没有。这些准则只适用于新的mapscript方法。现有的mapscript API保持不变。

票据ID

https://github.com/MapServer/MapServer/issues/244

投票历史

于2009/03/12通过,由Danielm、Umberton、Tomk、Stevew、Tamass、Howardb、Assefay、Periclesn、Jeff和Stevel提供+1。