经过漫长的等待,支持移动开发的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. Python面试题(十三)

    1.用最简洁的方式初始化这样一个变量:foo = [4,16,36,64,100] [i*i for i in range(2,12,2)] 答案 2.使用生成器编写fib函数,函数声明为fib(ma ...

  2. HDU 3973 AC's String 字符串哈希

    HDU 3973 通过哈希函数将一个字符串转化为一个整数,通过特定的方式可以使得这个哈希值几乎没有冲突(这就是关键之处,几乎没有视为没有= =!, 其实也可以考虑实现哈希冲突时的处理,只是这道题没必要 ...

  3. graphql-yoga 项目简单使用&&集成docker

      graphql-yoga 是一个实现了grahql的框架,使用简单,便捷 具体源码参考github https://github.com/rongfengliang/graphql-yoga-do ...

  4. ballerina 学习十七 多线程编程

    并发&&多线程开发对于日常的处理是比较重要的,ballerina 支持的模式有work fork/join async lock 基本workers 参考代码 import balle ...

  5. C#.NET通过Socket实现平行主机之间网络通讯(含图片传输的Demo演示)

    在程序设计中,涉及数据存储和数据交换的时候,不管是B/S还是C/S模式,都有这样一个概念:数据库服务器.这要求一台性能和配置都比较好的主机作为服务器,以满足数目众多的客户端进行频繁访问.但是对于一些数 ...

  6. oracle之 安装 11G RAC 报 NTP failed

    问题描述: 使用 NTP 同步集群节点时间,安装 11G RAC 报 NTP 过不去. 解决过程:-- 查看 /etc/sysconfig/ntpd 文件配置root@hbdw1:/root$cat ...

  7. GridView 绑定数据的常用指定格式。

    形式 语法 结果 注释 数字 {0:N2} 12.36   数字 {0:N0} 13   货币 {0:c2} $12.36   货币 {0:c4} $12.3656   货币 "¥{0:N2 ...

  8. LLMNR欺骗工具Responder

    LLMNR(Link-Local Multicast Name Resolution,链路本地多播名称解析)协议是一种基于DNS包格式的协议.它可以将主机名解析为IPv4和IPv6的IP地址.这样用户 ...

  9. urllib2的GET和POST请求(五)

    urllib2默认只支持HTTP/HTTPS的GET和POST方法 urllib.urlencode() urllib 和 urllib2 都是接受URL请求的相关模块,但是提供了不同的功能.两个最显 ...

  10. python学习-day 2

    1.执行Python脚本的两种方式1)调用解释器 Python +绝对路径+文件名称2)调用解释器 Python +相对路径+文件名称 2.简述位.字节的关系8位为1个字节 3.简述ASCII.uni ...