* Correct registration of metadata resource in case rdoConnectionInURL is specified

git-svn-id: trunk@42263 -
This commit is contained in:
michael 2019-06-22 07:29:34 +00:00
parent ce528e1808
commit 4cb612252a

View File

@ -670,15 +670,20 @@ begin
end; end;
if (rdoConnectionInURL in DispatchOptions) then if (rdoConnectionInURL in DispatchOptions) then
begin begin
C:=Strings.GetRestString(rpMetadataResourceName); // Both connection/metadata and /metadata must work.
FMetadataRoute:=HTTPRouter.RegisterRoute(res+C,@HandleMetaDataRequest); // connection/metadata is handled by HandleRequest (FindSpecialResource)
FMetadataItemRoute:=HTTPRouter.RegisterRoute(res+C+'/:id',@HandleMetaDataRequest); // /metadata must be handled here.
if (rdoExposeMetadata in DispatchOptions) then
begin
C:=Strings.GetRestString(rpMetadataResourceName);
FMetadataRoute:=HTTPRouter.RegisterRoute(res+C,@HandleMetaDataRequest);
FMetadataItemRoute:=HTTPRouter.RegisterRoute(res+C+'/:id',@HandleMetaDataRequest);
end;
Res:=Res+':connection/'; Res:=Res+':connection/';
end; end;
Res:=Res+':resource'; Res:=Res+':resource';
FListRoute:=HTTPRouter.RegisterRoute(res,@HandleRequest); FListRoute:=HTTPRouter.RegisterRoute(res,@HandleRequest);
FItemRoute:=HTTPRouter.RegisterRoute(Res+'/:id',@HandleRequest); FItemRoute:=HTTPRouter.RegisterRoute(Res+'/:id',@HandleRequest);
end; end;
function TSQLDBRestDispatcher.GetInputFormat(IO : TRestIO) : String; function TSQLDBRestDispatcher.GetInputFormat(IO : TRestIO) : String;