You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 35 Next »

4.0.6

4.0.5

4.0.4

4.0.3

4.0.2

  • Changes to the Database_Services module:
    • Update the CalculateColumn service so that the TableName variable is initialized to prevent potential VNAV errors.
  • Changes to the HTTP_Services module:
    • Update all GetHTTPValue services to support a DecodePercentString flag that will be used to automatically call the DecodePercentString service before returning the HTTP value.
  • Changes to the HTTP_Resource_Services module:
    • Update the AddEmbeddedResources service to support a new Singular argument. This provides support for an embedded resource that is unique and should be represented as sub-properties rather than sub-resources.
    • Update the AddSubProperty service to correctly handle the SubPropertyValue argument if it contains an object handle.
    • Rename the GetLinkRelationship service to GetLinkRelation. Rename the GetLinkRelationships service to GetLinkRelations.
  • Changes to the APIRoot_API module:
    • Replace all references to AddLinkRelationship with AddLinkRelation.
  • Changes to the Webaccounts_API module:
    • Replace all references to AddLinkRelationships with AddLinkRelations.
  • Changes to the Contacts_API module:
    • Replace all references to AddLinkRelationships with AddLinkRelations.

4.0.1

  • Various API routines were updated to use the FullEndpointURLNoQuery variable instead of the FullEndpointURL. This way specific services won't accidentally include potential query params when construction new URLs based on the base endpoint.
  • Changes to the APIRoot_API module:
    • Only include the resetPassword form action authentication is enabled.
    • Update the APIROOT.GET API to verify the sub-resource has at least one HTTP method before listing it in the response.
  • Changes to the HTTP_Resource_Services module:
    • Update the UpdateDatabaseRow gosub to set the Content-Location header with the new URL if the database row is new. According to the specification regarding 201 responses this should be the Location header.
  • Changes to the HTTP_Services module:
    • Update the UpdateDecodePercentString service handle the left quotation marks.
    • Update the CreateLogFile service to include a UTC date/time stamp in the Response log header.

4.0.0

  • Changes to the HTTP_Resource_Services module:
    • Fix GetColumnNames to properly remove XREF columns.
    • Add GetObjects service.
    • Add GetSerializedResource service.
    • Add ParseResource service.
    • Add AddLinkRelationships service.
    • Add AddProperties service.
    • Add AddEmbeddedResources service.
    • Add AddNestedProperties service.
    • Update GetDatabaseItem to use the new resource services.
    • Update GetDatabaseItems to use the new resource services.
    • Add AddFormAction service.
    • Update GetColumnValues service so when a Key ID is missing it will set Error_Services and set the response status to 404.
    • Add support for multiple nested objects in the AddNestedProperties service.
    • Update GetObjects so that specific Key ID parts can be identified to be used in the self relationship URL and also add feature so the default '*' delimiter can be swapped out for another character.
    • Fix bug AddNestedProperties when using Array formatting.
    • Add IsArray argument for the AddProperties service so data can be automatically formatted as an array regardless if @VMs are found. This is meant to maintain formatting integrity of the property regardless of 0, 1, or multiple values.
    • Add GetObject service. Refactored GetObjects service to use GetObject service.
    • Add AddProperty service. Update AddProperties service to call AddProperty for each property.
    • Add AddSubProperty and AddSubProperties service.
    • Add AddSubResource and AddSubResources service.
    • Add AddSubResourceObject and AddSubResourceObjects service.
    • Remove AddNestedProperties service. Refit other services to use AddSubResources.
    • Add AddLinkRelationship service. Update AddLinkRelationships service to call AddLinkRelationship for each relationship.
    • Update all resource related services to use new services and remove direct calls to SRP_JSON except for the lowest level services.
    • Add AllowKeyProperty argument to the GetObject, GetObjects, and GetColumnNames services to override the default behavior of removing full Key ID columns from being represented in the object. This is useful for sub-resources.
    • Fix bug in GetObject service where associated property names were not being removed if the column names were removed by the GetColumnNames service.
    • Update the GetDatabaseItem and GetDatabaseItems service so the SelfURL argument is now optional.
  • Changes to HTTP_Framework_Setup_Equates:
    • Add HTTP_FRAMEWORK_SETUP_WHITELISTED_IPS$.
    • Add HTTP_FRAMEWORK_SETUP_ENABLE_HTTP_BASIC_AUTHENTICATION$
    • Add HTTP_FRAMEWORK_SETUP_NEW_PASSWORD_TIME_TO_LIVE$
    • Add HTTP_FRAMEWORK_SETUP_OLD_PASSWORD_TIME_TO_LIVE$
    • Add HTTP_FRAMEWORK_SETUP_INVALID_PASSWORD_LIMIT$
    • Add HTTP_FRAMEWORK_SETUP_CONTAINMENT_ACTION$
  • Changes to the NDW_HTTP_FRAMEWORK_SETUP form:
    • Add controls to support Whitelisted IPs.
    • Major design overhaul:
      • Used a design layout similar to the Replication Manager, which is based on Microsoft Office Options dialog.
      • Add SRP ActiveX controls and multiple pages.
      • Move various setup controls onto different pages to suit the organizational layout.
      • Add HTTP Basic Authentication configuration controls.
      • Add Info buttons and tooltips for all fields.
  • Changes to the NDW_HTTP_Framework_Setup_Events commuter:
    • Add support for Whitelisted IPs.
    • Insert empty row if edit table controls are created empty. This allows a new item to be entered.
    • Major code changes to support the design overhaul of the form.
    • Add Server Enabled checkbox and associated logic.
    • Add TIMER event handler to dynamically update the Server Enabled checkbox.
    • Retrofit code to use Database_Services and Error_Services.
  • Changes to the HTTP_Services module:
    • Add the GetWhitelistedIPs and IPIsPermitted services.
    • Replace Xlate with ReadDataRow for all services referencing SetupTable$
    • Update GetHomeURL service to automatically prepend HTTP or HTTPS based on the request if this is not already specified in the user defined Home URL setting.
    • Update GetNonAuthenticatedURLs service to automatically prepend the API URL if this is not already specified in the user defined setting.
    • Add the GetEnableHTTPBasicAuthenticationFlag service.
    • Add the GetNewPasswordTimeToLive service.
    • Add the GetOldPasswordTimeToLive service.
    • Add the GetInvalidPasswordLimit service.
    • Add the GetContainmentAction service.
    • Add the GetServerEnabled service.
    • Add the SetServerEnabled service.
  • Changes to the HTTP_Authentication_Services module:
    • Add support for checking for whitelisted IPs in the AuthenticateRequest service.
    • Add GetWebAccountPasswordSetWebAccountPassword, and ValidateWebAccountPassword services.
    • Update the AuthenticateRequest service to use the ValidateWebAccountPassword service rather than relying upon a hardcoded USERS table.
    • Update NewPasswordTimeToLive$ equate to use the GetNewPasswordTimeToLive service rather than the hardcoded value.
    • Update OldPasswordTimeToLive$ equate to use the GetOldPasswordTimeToLive service rather than the hardcoded value.
  • New table: WEB_ACCOUNTS to provide built-in support for authentication.
  • New insert: WEB_ACCOUNTS_EQUATES.
  • New table commuter: WEB_ACCOUNTS_ACTIONS.
  • New service module: WEBACCOUNTS_SERVICES.
  • New HTTP service: HTTP_WEBACCOUNTS_SERVICES.
  • New insert: ACTION_SETUP (taken from SRP FrameWorks).
  • New service module: DATABASE_SERVICES (taken from SRP FrameWorks).
  • Added RTI_LH_INFO_EQUATES (taken from the UD Manager).
  • Changes to HTTP_ENTRY_POINT_SERVICES:
    • Add webaccounts to the list of allowed services.
  • New SYSENV configuration row: SRP_HTTP_FRAMEWORK_SERVER_ENABLED.
  • Changes to the HTTP_MCP controller:
    • Add support for the GetServerEnabled service. Set status to 503 is server is not enabled.
  • New Images
    • SRPHTTPINFO (BMPS\SRPHTTPInfo.png)
    • SRPHTTPTREECOLLAPSED (BMPS\SRPHTTPTreeCollapsed.png)
    • SRPHTTPINFOTREEEXPANDED (BMPS\SRPHTTPTreeExpanded.png)
  • Changes to the HTTPClient_Services module:
    • Update SendHTTPRequest service to support client-side certificates.

3.0.4

  • Changes to the HTTPClient_Services module:
    • Update the SendHTTPRequest service to check for content in the HeaderList variable before calling the For Each loop. (Bug Fix)
  • Changes to the HTTP_Contacts_Services web service:
    • Fix minor typo in the NextSegment variable in the GetItem method. (Bug Fix)
  • Changes to the HTTP_Resource_Services module:
    • Update the PostDatabaseItem, PutDatabaseItem, and PatchDatabaseItem services to support a new argument, AllowedColumnNames, which will be used to filter out column names which are submitted in the payload but should not be updated on the server. (Enhancement)

3.0.3

  • Changes to the HTTP_Services module:
    • Update the GetEntryPointService service to support the name of a fully qualified web service. For example, the the HTTP Framework Setup prompt for Entry Point can contain entry_point or http_entry_point_services (case-insensitive).

3.0.2

  • Service metadata added so the SRP Editor can use this without requirement all services to be recompiled first.

3.0.1

  • All services have been refactored to use Enhanced BASIC+ syntax.
  • All web services have been refactored to be easier to setup.
  • Changes to the HTTP_Services module:
  • 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.
    • Change the debugger setting mode and debugger intercept routine based on the setup values.
  • Changes to the HTTP_Entry_Point_Services web service:
    • Update to simplify the way the JSON menu is built.
    • Update to only provide access to the Contacts and Version web services.
  • Changes to the HTTP_Contacts_Services web service:
    • Update to support all CRUD operations.
    • Update to connect to the sample CONTACTS database table which is now included.
  • Changes to the HTTP_Resource_Services module:
    • Add the PutDatabaseItem service.
    • Add the PatchDatabaseItem service.
    • Update PostDatabaseItem service to only create new resources. This makes this service conform to the HTTP standards.
  • 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_LOG_ERRORS_ONLY$.
  • Added the following configuration options to SRP_HTTP_FRAMEWORK_SETUP:
    • Aborted Service
    • Enable Logging Flag
    • Debugger Setting
    • Debugger Intercept
    • Log Errors Only Flag
  • Update NDW_HTTP_FRAMEWORK_SETUP to support the Aborted Service, Enable Logging Flag, Debugger Setting, Debugger Intercept, and Log Errors Only Flag values.
  • New application service module: HTTP_Aborted_Service. This is a default service to handle aborted HTTP Requests. This is similar to INET_ABORTED for traditional INET/O4W web applications.
  • New application service module: HTTP_Debugger_Service. This is a default service to handle runtime errors during HTTP Requests. This uses the RTI_DEBUG_COMMON insert to get the state of the debugger.
  • New web service: HTTP_Version_Services. This service returns the current version of the SRP HTTP Framework product. It is used by the revamped HTTP_Entry_Point_Services.
  • New sample database: As noted in the change log for HTTP_Contacts_Services above, there is now a sample CONTACTS database table included. This is a small (300 row) table with indexes that is designed to help install and test the SRP HTTP Framework very quickly.

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:
  • 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

1.0.2

1.0.1

  • Create two configuration records in the SYSENV table:
  • 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.
  • No labels