3.0.1
- Changes to the HTTP_Services module:
- Add the SetSessionID service.
- Add the GetSessionID service.
- Add the SetOECGIProcErr service.
- Add the GetOECGIProcErr service.
- Add the GetAbortedService service.
- Add the GetDebuggerSetting service.
- Add the GetDebuggerService service.
- Add the GetAbortedService service.
- Add the GetEnableLoggingFlag service.
- Add the CreateLogFile service. The format for the Request logs has been significantly updated. Each attribute of the Request array is now labelled to make it easier to identify the meaning of each value. Also, data coming from the Registry Settings and Additional Values attributes is displayed in a list and labelled accordingly.
- Add the SetHTTPxxxx services.
- Update the SetRequestHeaderFields service to use the Registry information from the GetHTTPRegistrySettings service rather than using the SRP_Registry function.
- Changes to the HTTP_MCP controller:
- Remove logging logic and call the new CreateLogFile service instead.
- Remove logic to handle ProcErr situations and call the new GetAbortedService.
- Changes to HTTP_Framework_Setup_Equates:
- Add HTTP_FRAMEWORK_SETUP_ABORTED_SERVICE$.
- Add HTTP_FRAMEWORK_SETUP_ENABLE_LOGGING$.
- Add HTTP_FRAMEWORK_SETUP_DEBUGGER_SETTING$.
- Add HTTP_FRAMEWORK_SETUP_DEBUGGER_INTERCEPT$.
- Add HTTP_FRAMEWORK_SETUP_ABORTED_SERVICE$.
- Added the following configuration options to SRP_HTTP_FRAMEWORK_SETUP:
- Aborted Service
- Enable Logging Flag
- Debugger Setting
- Debugger Intercept
- Update NDW_HTTP_FRAMEWORK_SETUP to support the Aborted Service, Enable Logging Flag, Debugger Setting, and Debugger Intercept values.
- New application service module: HTTP_Aborted_Service. This is a default service to handle ProcErr situations. This is similar to INET_ABORTED for traditional INET/O4W web applications.
3.0.0
- New form: NDW_HTTP_FRAMEWORK_SETUP and an associated event commuter module. This provides a visual interface for configuring the setup values in SRP_HTTP_FRAMEWORK_SETUP.
- Added the following configuration option to SRP_HTTP_FRAMEWORK_SETUP:
- Non-Authenticated URLs
- Changes to the HTTP_Services module:
Add the GetNonAuthenticatedURLs service.
Add the URLRequiresAuthentication service.
- Update the DecodePercentString service to convert %09, %0A, and %0D properly.
- Update the SetQueryField service to only require the Name argument to be populated.
- Changes to the HTTP_Resource_Services module:
Refactor the GetColumnNames service and resolve a bug where non-master data type columns would be returned.
Update the PostDatabaseItem service to set the response status to 201 when the ItemID is being passed in but it does not yet exist in the database.
- Changes to the HTTP_MCP controller:
Add support for ProcErr argument. Create a generic error response.
Add code to track API execution time using SRP_Stopwatch. Display the time in the Response log that is written into the debug folder.
- Changes to the HTTP_Authentication_Services module:
Update the AuthenticateRequest service to verify authentication requirements of the current URL using the URLRequiresAuthentication service.
2.1.0
- New application service module: HTTPClient_Services. Provides robust services for web services to make requests to other web servers.
- Add the following configuration option to SRP_HTTP_FRAMEWORK_SETUP:
- Flush Cache Flag
- Add the following services to the HTTP_Services module:
- Update the ClearSettings service to check the GetFlushCacheFlag service before calling the Flush and GarbageCollect statements. The purpose is to allow code web service code to always be refreshed without needing to restart the OEngineServer.
- Add GetMVGroupNames service to HTTP_Resource_Services so that associated multivalue column groups can be applied to JSON objects.
- Update GetDatabaseItem and GetDatabaseItems services in HTTP_Resource_Services to use the GetMVGroupNames service for any associated multivalue columns that have been defined this way.
- Update SetHALItem and SetHALCollectionEmbedded services in HTTP_JSON_Services to support embedded objects that contain associated multivalue column information.
- Update PostDatabaseItem service in HTTP_Resource_Services so all of the GETVALUE services specify an empty string in the Default argument. This allows empty column values to maintain a JSON null rather than convert it to an empty string.
- Update PostDatabaseItem service in HTTP_Resource_Services to rely upon %RECORDS% (if one exists) if there is no %SK%. This is an alternative way to quickly calculate the next available Key ID for the new database row being posted.
- Update GetDatabaseItems service in HTTP_Resource_Services to rely upon %RECORDS% (if one exists) if there is no filter specified. This is an alternative way to quickly get a sorted list of Key IDs for the database rows being retrieved.
2.0.1
- Fix bug in SetResponseHeaderField service that prevented header values from being saved.
- Improve the GetFullEndPointURL service so that end points which are also the same as the API URL do not display a "/" at the end.
2.0.0
- Major changes to improve the way RESTful web services process each segment in the URL:
- Changes to the HTTP_Services module:
Update the GetResponse service to use the GetResponseStatus service to populate the response body if there is no body already generated by a service.
Add GetFullEndPointURL service to provide a way of getting the URL sent by the client.
Update argument signatures for the RunHTTPService to be simpler and more intuitive.
Refactor the HTTP_Service_Setup insert to be much cleaner and with fewer lines of code.
- Changes to the HTTP_Services module:
- Add support for standard and developer customized HTTP response status codes:
- Create new configuration record in the SYSENV table: SRP_HTTP_FRAMEWORK_HTTP_STATUS_CODES.
Update the GetResponseStatus service in the HTTP_Services module to use the SRP_HTTP_FRAMEWORK_HTTP_STATUS_CODES configuration record.
- Add the Entry Point Service configuration option to SRP_HTTP_FRAMEWORK_SETUP.
- Add GetEntryPointService to the HTTP_MCP controller.
- Refactor various core routines to work with the previous changes:
1.0.2
- Add the following configuration options to SRP_HTTP_FRAMEWORK_SETUP:
- Enable Authentication Flag
- Realm Value
- Add the following services to the HTTP_Services module:
- Update the HTTP_Authentication_Services helper to use the GetEnableAuthenticationFlag and GetRealmValue services. These services replaced hard-coded values.
- Update the HTTP_MCP controller to use the GetCapturePath service. This replaced the Xlate.
- Update the HTTP_Service_Setup insert to use the GetHomeURL and GetAPIRootURL services. These services replaced Xlated values.
1.0.1
- Create two configuration records in the SYSENV table:
- SRP_HTTP_FRAMEWORK_VERSION - Stores the current version and build of the SRP HTTP Framework product.
- SRP_HTTP_FRAMEWORK_SETUP - Stores the Home URL, API URL, and Capture Path information.
- Update the HTTP_Service_Setup insert to anticipate OECGI requests wherein the Script Name URL also exists within the Path Info URL (e.g., Microsoft IIS). This fixes a problem wherein the wrong service was being identified, especially in the Entry Point Service.
- Update the HTTP_Service_Setup insert to assign the HomeURL$ and APIURL$ equates with the values stored in the SRP_HTTP_FRAMEWORK_SETUP record rather than being hard-coded. This eliminates the need to recompile HTTP service modules whenever the URL paths are changed.
- Update the HTTP_Services module by adding a new service called GetVersion. This returns the information stored in the SRP_HTTP_FRAMEWORK_VERSION record.
Update the HTTP_MCP controller to use the capture path stored in the SRP_HTTP_FRAMEWORK_SETUP record. This eliminates the need to update the hard-coded path in HTTP_MCP and recompile.
1.0.0
- Initial release on the stand-alone product.