经过漫长的等待,支持移动开发的kbmmw 4.40.00 终于发布了,这次不但支持各个平台的开发,

而且增加了认证管理器等很多新特性,非常值得升级。具体见下表。

4.40.00 BETA 1 Oct 28 2013

New stuff
        =========
        - Added properties Cancel:boolean, UniqueID:string,
      UniqueCallID:string, RequesterNodeID:string and
      RequesterClusterID:string to TkbmMWCustomService. Enables
      features for cancelling ongoing request.
        - Added full XE5 Win32/Win64/OSX/Android and IOS support. Add
      kbmMW and kbmMemTable source directory to Library path
          when compiling for Android or IOS.
        - Added TkbmMWAuthorizationManager which can be used for
      keeping track of resources, actors, logins and authorizations
      and constraints.
        - Added AuthorizationManager property to TkbmMWServer.
        - Added OnPreServeRequest to TkbmMWServer. Provides access to a
      request before even authorization manager kicks in.
        - Added Cancel method to TkbmMWServer allowing for requesting
      cancelation of a specific request.
        - Added Enabled property to TkbmMWCustomServerTransport.
        - Modified OnAuthenticate event to include AMessage:string
      argument.
        - Added Transport:string to TkbmMWClientIdentity. Is set on
      server to let authentication know from which transport a
      request originates.
        - Added portable high performance TkbmMWLock (when
      KBMMW_SUPPORT_FASTMRWSLOCK is defined (default)) which is
      much faster than TEvent/TMutex and
      TMultiReadExclusiveWriteSynchronizer.
        - Added TkbmMWTiming which provides portable high resolution
      time functionality.
        - Added TkbmMWInterlocked which provides portable interlocking
      functions.
        - Added high performance TkbmMWEvent to replace slower TEvent.
        - Added ConfigureAffinity, Yield, Sleep, CurrentThreadID,
      CurrentThread, ThreadGroup and ThreadAffinityType to
      TkbmMWCustomThread.
          ThreadGroup allows selection of a thread group which share a
      common CPU core affinity. Max 256 threadgroups exists.
          Placement of the thread on a CPU core within the defined
      affinity is determined by the ThreadAffinityType setting.
          Allows for fine tuned thread optimization. Specify affinities
      in global variable: kbmMWThreadGroupAffinity.
        - Added TkbmMWPlatformMarshal for portable memory/bytes
      /utf8/string marshalling.
        - Changed kbmMWHashString from a simple xor hash to the better
      FNV-1A 32 bit hash.
        - Added portable kbmMWGetApplicationName:string returning the
      name (typically with path) of the current executable.
        - Added optional Mapping:string argument to LoadFromDataset.
      Specify sourcefield=destfield;... for custom mapping of
      fields.
        - Added new WIB message type mwmtEvent (EVT.). Its designed to
      be used for sending system/application events. For example
      used by the new progress management system, which allows for
      a client to subscribe for progress, and a server to push
      progress status, for example for long running synchrone or
      asynchrone requests (require WIB).
        - Added new transport heartbeat functionality via properties
      HeartbeatInterval and OnSendHeartbeat. OnSendHeartbeat is
      triggered every n seconds, and its the developers
      responsibility to then actually send a message/request to
      indicate a heartbeat from a client
          with help of the SendHeartbeat method on the client transport.
        - Added mwsloNullOnValueError as a new SQLite option. Instead
      of excepting the field is set to null.
        - Added Pause:boolean, PausePriority:byte to TkbmMWCustomQueue.
      If Pause=true will pause processing (sending if outbound
      queue) messages equal to or lower than PausePriority.
        - Added counters TotalPushCount, TotalTentativePopCount,
      TotalCommitCount, TotalRollbackCount, TotalRejectCount,
      TotalDeleteCount to TkbmMWCustomQueue.
        - Added support for multiple events for a single subscription
      via the Events property of TkbmMWSubscription.
          Now Subscribe adds an additional event if a subscription
      allready exists for a particular subscription subject.
          Use SubscribeReplace to replace all previously events for a
      subscription with another event.
          Unsubscribe method now overloaded with multiple methods,
      allowing to unsubscribe for a specific event for a subject.
          The "old" Unsubscribe unsubscribes all events for the given
      subject.
        - Added ThreadGroup and ThreadAffinityType to
      TkbmMWCustomAsyncMessageProcessor,
      TkbmMWCustomAsyncMessageQueueProcessor
          and TkbmMWCustomPooledMessageQueueProcessor.
        - Added new TkbmMWCustomEventMessage which is the basis for all
      WIB based messages that consitutes an event message.
        - Added new TkbmMWHeartbeatEventMessage.
        - Added properties AsEncodedString, UpperName to
      TkbmMWHTTPCustomValue.
        - Added Delete, Values, Names, ValueAsString, AsEncodedString
      to TkbmMWHTTPCustomValues.
        - Added TkbmMWHTTPMimeHeaderValueField,
      TkbmMWHTTPMimeHeaderValueFields, TkbmMWHTTPMimeHeaderValue,
          TkbmMWHTTPMimeHeaderValues, TkbmMWHTTPMultiPart,
      TkbmMWHTTPMultiParts in kbmMWHTTPUtils.pas.
          Thus now multipart HTTP messages can be parsed.
        - Added TkbmMWHTTPCustomAuthorization and
      TkbmMWHTTPBasicAuthorization along with
          new function kbmMWParseAuthorization(const
        AAuthorizationHeader:string):TkbmMWHTTPCustomAuthorization;
          for parsing authorization header.
        - Updated TkbmMWHTTPTransportStreamHelper to support new
      TkbmMWHTTPMimeHeaderValues, and added HTTPRealm:string
      property, and added    
      Authorization:TkbmMWHTTPCustomAuthorization property.
        - Added  function
        HTTPResponseFromStream(AStream:TkbmMWMemoryStream):variant;
      to TkbmMWCustomHTTPService.
        - Updated known mimetypes (Added SVG, JSON, TTF, OTF, WOFF,
      EOT, MP4, MPEG4)
        - Updated known charsets (added JSON = UTF8).
        - Added TkbmMWSAFSyncRequestResponseStatus set
      (mwbrsTimeout,mwbrsAbort,mwbrsOK) which allows for
          a sync/async request to determined if a request has timed
      out, been cancelled or proceeded ok.
        - Added OnProcessorException to TkbmMWCustomSAFClientTransport
      which is triggered if the internal inbound or outbound
          processor encounters an exception.
        - Added optional APriority argument to AnnounceSubscriptions
      method.
        - Added OnClientWaitingResponse event to TkbmMWCustomClient.
      Its triggered when a request is sent that is blocking (sync).
        - Added new TkbmMWProgressManager which can be used to send and
      receive progress information via the WIB.
        - Added new FireDAC adapter.

Fixes
        =====
        - Fixed several issues.

KbmMW 4.40.00 测试发布的更多相关文章

  1. KbmMW 4.40.00 正式版发布

    经过快3个月的测试,kbmmw 4.40 正式版终于在圣诞节前发布了. We are happy to announce the availability of a new kbmMW release ...

  2. kbmmw 5.06.00 beta 发布

    原生.高效.可扩展.跨平台通信库来了. we are happy to announce v5.06.00 BETA of our popular middleware for Delphi and  ...

  3. KbmMW 4.50.00 测试版发布

    We are happy to announce the release of kbmMW v. 4.50.00 Beta Professional and Enterprise Edition wi ...

  4. [原]Jenkins(七)---jenkins项目编译测试发布由maven构建的web项目

    /** * lihaibo * 文章内容都是根据自己工作情况实践得出. * 版权声明:本博客欢迎转发,但请保留原作者信息! http://www.cnblogs.com/horizonli/p/533 ...

  5. kbmMW 5.07.00试用笔记

    在kbmMW 5.06.20试用笔记中遇到的问题,在这个版本中,基本都解决了.但还是发现修正后存在的小问题及新问题: 1.Resolve返回值错误 当提交的ClientQuery是执行一条sql语句, ...

  6. jenkins 实现测试发布、预发布、真实发布、回滚发布

    主要思路: 1.做三个文件夹,用于放置不可随意修改的配置文件(测试发布.预发布.真实发布) 2.每次都先修改配置文件再进行构建(构建时会先把配置文件复制到构建的目录,再同步到发布的目录) 3.发布完代 ...

  7. kbmmw 5.05.00 发布

    新年前最后几天,kbmmw 发布了新版本,增加一大波功能.we are happy to announce v5.05.50 of our popular middleware for Delphi ...

  8. KbmMW 4.30.00 发布

    今天早上,KbmMW发布了4.30.00 版,这个版本开始支持XE4 的WIN/WIN64/OSX. 暂时不支持ios开发,同时加强了通过JSON 的对象序列化.还有就是解决了我提交的几个有关 汉字处 ...

  9. KBMMW 4.92.00 发布

    We are happy to announce the release of kbmMW Professional and Enterprise Edition. Yet again kbmMW c ...

随机推荐

  1. pandas dataframe 读取 xlsx 文件

    refer to: https://medium.com/@kasiarachuta/reading-and-writingexcel-files-in-python-pandas-8f0da449c ...

  2. c#:Json字符串转成xml对象

    没看到.net framework中有这样的功能, 懒得到处找了, 索性花点时间自己写一个 /* * Created by SharpDevelop. * Date: 2013/6/24 * User ...

  3. noip2009最优贸易(水晶球)

    题目:http://codevs.cn/problem/1173/ https://www.luogu.org/problemnew/show/P1073 本来考虑缩点什么的,后来发现不用. 只要记录 ...

  4. linux Posix 信号量 一

    信号量是一种用于提供不同进程间或一个给定进程的不同线程间同步手段的原语. linux提供两种信号量,“内核信号量”和“用户态进程信号量”,“用户态信号量”又分为“Posix”,“System V”信号 ...

  5. C#中XML文档注释编译DLL引用到其它项目

    引用地址:http://zhidao.baidu.com/link?url=jSGYEBysE4gBExtNsHCVk3vd2OK2cMlaf02cS79GdRuGueTBdFJB0btOdBYkg_ ...

  6. HDU 4438 Hunters

    Hunters Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Sub ...

  7. Java ScriptEngine 解析js

    Java ScriptEngine 解析js 1.脚本引擎 ① 通过脚本名称获取:      ScriptEngine engine = new ScriptEngineManager().getEn ...

  8. 熟练使用Linux系统信息类命令

    系统信息类命令 – dmesg命令 dmesg命令用实例名和物理名称来标识连到系统上的设备. dmesg命令显示系统诊断信息.操作系统版本号.物理内存大小以及其他信息. 系统启动时,屏幕上会显示系统C ...

  9. Python开发之用户密码存储

    在各种线上应用中,用户名密码是用户身份认证的关键,它的重要性不言而喻.一方面,作为保护用户敏感数据的钥匙来说,一旦被破解,系统将敞开大门完全不设防.另一方面,密码这把钥匙本身就是非常敏感的数据:大多数 ...

  10. Spring IO Platform介绍

    为什么要用Spring IO Platform 今天无意间看到了一个关键词:"Spring IO Platform",第一直觉是不是有关于IO方面的框架或者包呢,查了一下,居然是为 ...