From 6dfc275b08a7278e6e7c848dcb9664c244b6113a Mon Sep 17 00:00:00 2001 From: malik masis Date: Mon, 16 May 2022 16:35:56 +0300 Subject: [PATCH 1/9] Added a new article --- .../POST.md | 288 ++++++++++++++++++ .../access_denied.png | Bin 0 -> 16960 bytes .../list.png | Bin 0 -> 47075 bytes .../structure.png | Bin 0 -> 116710 bytes 4 files changed, 288 insertions(+) create mode 100644 docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md create mode 100644 docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/access_denied.png create mode 100644 docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/list.png create mode 100644 docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/structure.png diff --git a/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md b/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md new file mode 100644 index 0000000000..f3926c1490 --- /dev/null +++ b/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md @@ -0,0 +1,288 @@ +# Consuming REST APIs from a .NET Client Using ABP's Client Proxy System +In this article, we will show how to consume rest api by using static client proxy by creating a new project and converting that from dynamic client proxy to static client proxy. Also, I will glance at the differences between static and dynamic generic proxies. + +Article flow +* Create a new ABP application with ABP CLI +* Create application service interface +* Implement the application service +* Consume the app service from the console application +* Convert application to use static client proxies +* Add authorization to the application service endpoint +* Grant the permission +* Further reading + +### Create a new ABP application with ABP CLI +Firstly create a new template via ABP CLI. + +````shell +abp new Acme.BookStore -t app +```` + +> If you haven't installed it yet, you should install the [ABP CLI](https://docs.abp.io/en/abp/latest/CLI). + +At the same folder build the project with the following command on the cli. +````shell +dotnet build /graphbuild +```` + +It will restore the project and download the NuGet packages. + +Now you should run the DbMigrator project to up your database. + +Now your project is ready you can run it properly. + +![structure-of-the-project](./structure.png) + +From now on, we will add some files to show the case to you. + + +### Create application service interface +You should open your web application then find `Pages` folder and a create new folder named `Books`. +You should create a new razor page and a new js file as named index. + +Change the Pages/Books/Index.cshtml as the following: +```csharp +@page +@using Acme.BookStore.Localization +@using Acme.BookStore.Web.Pages.Books +@using Microsoft.Extensions.Localization +@model IndexModel +@inject IStringLocalizer L +@section scripts +{ + +} + + +

@L["Books"]

+
+ + + +
+``` + +Now change index.js file as the following content +```js +$(function () { + var l = abp.localization.getResource('BookStore'); + $('#BooksTable').DataTable( + abp.libs.datatables.normalizeConfiguration({ + serverSide: true, + paging: true, + order: [[1, "asc"]], + searching: false, + scrollX: true, + ajax: abp.libs.datatables.createAjax(acme.bookStore.books.book.getList), + columnDefs: [ + { + title: l('Name'), + data: "name" + }, + { + title: l('AuthorName'), + data: "authorName" + }, + { + title: l('Price'), + data: "price" + } + ] + }) + ); +}); +``` + +# Implement the application service +Assume that we have an `IBookAppService` interface: + +````csharp +using System.Collections.Generic; +using System.Threading.Tasks; +using Volo.Abp.Application.Services; + +namespace Acme.BookStore.Books +{ + public interface IBookAppService : IApplicationService + { + Task> GetListAsync(); + } +} +```` + +That uses a `BookDto` defined as shown: + +```csharp +using System; +using Volo.Abp.Application.Dtos; + +namespace Acme.BookStore.Books +{ + public class BookDto : AuditedEntityDto + { + public string AuthorName { get; set; } + + public string Name { get; set; } + + public DateTime PublishDate { get; set; } + + public float Price { get; set; } + } +} +``` + +```csharp +namespace Acme.BookStore.Books +{ + public class BookAppService : ApplicationService, IBookAppService + { + public Task> GetListAsync(PagedAndSortedResultRequestDto input) + { + var bookDtos = new List() + { + new BookDto(){ Name = "Anna Karenina", AuthorName ="Tolstoy", Price = 50}, + new BookDto(){ Name = "Crime and Punishment", AuthorName ="Dostoevsky", Price = 60}, + new BookDto(){ Name = "Mother", AuthorName ="Gorki", Price = 70} + }; + return Task.FromResult(new PagedResultDto( + bookDtos.Count, + bookDtos + )); + } + } +} +``` +It simply returns a list of books. You probably want to get the books from a database, but it doesn't matter for this article. To do it you can visit [here] (https://docs.abp.io/en/abp/latest/Tutorials/Part-1?UI=MVC&DB=EF) + +### Consume the app service from the console application +Add a new test class, named BookAppService_Tests in the Application.Tests + +```csharp +using System.Threading.Tasks; +using Xunit; + +namespace Acme.BookStore.Books +{ + public class BookAppService_Tests : BookStoreApplicationTestBase + { + private readonly IBookAppService _bookAppService; + + public BookAppService_Tests() + { + _bookAppService = GetRequiredService(); + } + + [Fact] + public async Task Should_Get_List_Of_Books() + { + var result = await _bookAppService.GetListAsync(); + Assert.Equal(3, result.Count); + } + } +} +``` + +### Convert application to use static client proxies +Before showing you how to use static client proxies instead of dynamic client proxy, I ask for talk differences between both approach. Their similarty, advantages and disadvantages to each other. + +##### Benefits +* Maps C# method calls to remote server HTTP calls by considering the HTTP method, route, query string parameters, request payload and other details. +* Authenticates the HTTP Client by adding access token to the HTTP header. +* Serializes to and deserialize from JSON. +* Handles HTTP API versioning. +* Add correlation id, current tenant id and the current culture to the request. +* Properly handles the error messages sent by the server and throws proper exceptions. + +##### Differences +Static generic proxies provide better performance because it doesn't need to run on runtime, but you should **re-generate** once changing API endpoint definition. Dynamic generic proxies don't need **re-generate** again because working on the runtime can take more a bit of time. + +First, add Volo.Abp.Http.Client NuGet package to your client project: +````shell +Install-Package Volo.Abp.Http.Client +```` +Then add AbpHttpClientModule dependency to your module: +```csharp +[DependsOn( + typeof(AbpHttpClientModule) + //the other dependencies + )] + +public class BookStoreApplicationModule : AbpModule +{ + public override void ConfigureServices(ServiceConfigurationContext context) + { + //Other configurations + + // Prepare for static client proxy generation + context.Services.AddStaticHttpClientProxies( + typeof(BookStoreApplicationContractsModule).Assembly + ); + } +} +``` + +`AddStaticHttpClientProxies` method gets an assembly, finds all service interfaces in the given assembly, and prepares for static client proxy generation. + +> The [application startup template](https://docs.abp.io/en/abp/latest/Startup-Templates/Application) comes pre-configured for the **dynamic** client proxy generation, in the `HttpApi.Client` project. If you want to switch to the **static** client proxies, change `context.Services.AddHttpClientProxies` to `context.Services.AddStaticHttpClientProxies` in the module class of your `HttpApi.Client` project. + +Now you're ready to generate the client proxy code by running the following command in the root folder of your client project when your project is running. + +````bash +abp generate-proxy -t csharp -u http://localhost:44397/ +```` + +Also, you should then run the below command under your web project for the UI side for MVC +````bash +abp generate-proxy -t js -u http://localhost:44397/ +```` + +You have been should the generated files under the runned folder. + +### Add authorization +ABP Framework provides an authorization system based on the ASP.NET Core's authorization infrastructure. +Even so, to use that need to make some configurations. + +Under `Acme.BookStore.Application.Contracts` open `BookStorePermissions` and paste the below code +```csharp +public static class BookStorePermissions +{ + public const string GroupName = "BookStore"; + + public static class Books + { + public const string Default = GroupName + ".Books"; + } + +} +``` +Also need to change `BookStorePermissionDefinitionProvider` under the same folder and project as following. +```csharp +public class BookStorePermissionDefinitionProvider : PermissionDefinitionProvider +{ + public override void Define(IPermissionDefinitionContext context) + { + var bookStoreGroup = context.AddGroup(BookStorePermissions.GroupName, L("Permission:BookStore")); + bookStoreGroup.AddPermission(BookStorePermissions.Books.Default, L("Permission:Books")); + } + + private static LocalizableString L(string name) + { + return LocalizableString.Create(name); + } +} +``` +And now you should add [Authorize(BookStorePermissions.Books.Default)] to `BookAppService` +If you don't give permission you should see the following screen. +![access denied](./access_denied.png) + +After completing that you can make localization configuration and you should give permission from the Admin UI side. Now you should the following screen. +![list page](./list.png) + +### Further Reading +In this small tutorial, I explained how you can create an example project and apply static client proxy instead of dynamic client proxy. Also summarized the differences between both approaches. + +If you want to get more information, you can read the following documents: + +* [Static C# API Client Proxies](https://docs.abp.io/en/abp/latest/API/Static-CSharp-API-Clients) +* [Dynamic C# API Client Proxies](https://docs.abp.io/en/abp/latest/API/Dynamic-CSharp-API-Clients) +* [Web Application Development Tutorial ](https://docs.abp.io/en/abp/latest/Tutorials/Part-1?UI=MVC&DB=EF) diff --git a/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/access_denied.png b/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/access_denied.png new file mode 100644 index 0000000000000000000000000000000000000000..b0808c8a919fdc928152088ee9d707c2b35a99a8 GIT binary patch literal 16960 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 WsD4mY;{&Y^KucZkNu}D0H~$TO$XUn$ literal 0 HcmV?d00001 diff --git a/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/list.png b/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/list.png new file mode 100644 index 0000000000000000000000000000000000000000..7b4311acbe0d17f871e1f1a8770e8983bb1e7628 GIT binary patch literal 47075 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ЭF|AZFe^{OPBwT{6S8%+ase|#&BrUzhx*?fwJm)qBbqCuICU)vBf`JM{8 zGj@VZSg0uff_{Hq6Qui<5k1Zy#_q6d3V^iL)<0Fw9QW*A(%AfZ`1KM4^!V{hXCH#5 zSR|HeBu$H4Z7F8;TI8?v#3hd!;;OhUE$B3HGE+`O_%vX)LC|d`;>Z{ z&V#?hWzhQ@Eq+1U2Cw#@R*D`qH(K9pkfi#c6QTLhKjt&)en80K#*i#z;9c%gMVNc= zfa!$)z{djZ-I%ZSav(>P6R4`q@=JASG!vUm$r%RsIXCq5q#ute==xcdfVGqjuh9ah zPM2Oqhzmo`TeqI~bQZeWr-%q&zW1~Iw`DkWLguk)mNrL)LfXvMxP~GvS<{#5zfQdI zbUDTfwAGhU9|jRs{iVE6Az{{1gi(Y{sHyezX~ch6Ngs++?#nKVtoS+1Pp7ISx>by1 z1wU(+c!ql@PANJeujAg)bm)A&Qf0w~+5%5LEI~S_Jc-PR;U%Q|v!lNSj&<*0hkFN1k=-@4P>foJ2%}*j z4(#-x?i;n()2(PQC}awHws1~1w0z9Fq+`;sIQl&(V}08W6hT7 z^XL_k0xvkJ$@HiZAW^-B?FqkG9xor}O|Qm4pGjOW$ zqL$(#Y2nko_-eT-Q6JlJH|9Ua_p4YOdI^X#9c!`0$4`Ec05VsCOBQNLHZ)De-%3Bs zQ0p8eLm}~^{NWMFOEY!7cHAqqsqKXAq`mR>nGPZ#G<*`Hk1qxB?Wp)FCGVU2lwqKH zWK*%)$rWj}G|iWDk!XB_^59p$h(gCVh(AT;^G1t#3i0K^FHaxe?}b?40`NN9XqXnC6__e;LN&*HV;mQ+sRb9h|Z5@xb1D0b~U5w z;+15?MBMkDhtjgDZ;cALA06^5e|>tc_0nJy8Ili5FPA#XGvD{7cK^OyK0MSTXbubG zQ_=vT{+%Ai6B|uq_2p)f6O9!EZK&+`n%Phn?EbkH((ddSl=6aD;SrRjY{AeXPkvMje>KlodV=GMQzMDI1~QL)o-IEr%mzFz4l_ucJV#V zhQCW>&$AuB@qa(aRNGw1p>{LC3d+aT$&*gP?qw4K>SKK+v0rwgeDjqF&WreFEDU0q zKrYJat4Xudn#-B3sjTbeY+RlF2qwX#y;+JzeKjh*USk1%NW?(p)3X*X%afu0`Y>KL z&~>%cAJWV!Juc{#=oFp(rJhILc?dnXW<(<|>O7L0u*K^*6?-pO8FhOw6(gK7=cJ@B zB}STuE&~pc?|AvRK}y2LwQ4(1o|=t_SysYdqz=?=Fm{lis6#};g)L4Yx1$;?yFZ%x z6xSJ8Hh#nV*Z2MPCmwGbYSj701pTT(DMMXfZfkWz%Eq|r8tyc!ap?BDexjKcypjJr zU1+oXLe5$iDV#iBankQcR=Y8o8!hoj3@j{$_;czc@`+17`$a!IyFI&8_h)}*{(e1!f(UHCW=XJG?ud1!Ph@Un9VmmK> z$ic4*Lp=jv^eR!3gr&$0aG7M&dCYqdVv3>ECHJ(>5L?+#gQfoRuZ;+JL0G6sO$W7} z>04@g2efvPl55oD{*hrocwZ?DP}`zu;#6C?7u4zvD+)3u#m0Sy5sG zLH*3ES2JsbDn`1VvJ#bHR6i@PgqS4tfS>;N@5fHMdd+6K`9N)6|*PfuXnlS|Poy0wC8?(E>J*w0*v}T72 zaCMKhxqoW2EN{dwmraT^C?a!O)(;{hqZ&r&Wq<~)k`cv${4&%}9z7&V=ad8&DPxOYNHj%+A>G$VE*+@%}<>p#5At zIawkjjQ#O#nn`UpJz}>X4unQLwkuMU3MoA1-l4(btAN_B%H@ZYdv>ho2i&y_z!^BA)#@gUazNNegS{@GFD(1c zOy9WcprR<{rByH|Z7h_agxLbjgn_|QRsPix0h!Wtt0RYb=3w0VM8uljo$dVRtz2vQ z>eFHQYPel3=S~%c0P;P0Y%OJafYVD(9*UyoGG2y5GWrrf8-dd-`deX0>hq_R+3rB zI{L)O7&>#VwFRc!serDrRF5{scv>XTu&YzsV^TOmN>V}40##?%PXBH8>SN)Dr9q-3$FV)O9#TPVNN+djXoN#0PPkJHs~m~ zPSg?kO+?0YZc>ojJ?#lYR;B;*sVbDr1y*}tOxUl!Qt9?KjbcWxk2h=Fgn1s~4~>t< zczAG{z$1=x9@nyCl|l2+$pTX2nwE_|28?ub@E4kEu4;2czAQ*u$Z3RXB193bnf%IG z|GHXX)|#ovc>Tn_5Y%}sr*nw!)Zx55sEUUvgTz0);Z+4A$!quGXYU-sw%LNp?c8G5 zZYPTD{m*$>xVN)xR(L*A?|Fr3VWjJ{Ukc-k>-``g+<1@r@Kb%IzJ4Lw}y|)9dmakVh|^RySb!J5lkr4mPtH(-pV{a=}lEj^x(Se!z~|u!(hiO%-|uB zO+(~5l%8btQYiK5=WK2IQsL2E-k52Y$s`MzK$9-D*)|VNBkz;1-;Y(Zy?{Ys1G%6s z=Yr+IB+FCMFOHjgI>o322zDEGth&4e++hRkRhV^tN7y%R0xpl83|6EpP|}YPoiU}C zssy8p&%LQT*#)j8yqhsQ$Pk zWnwt2b2@P+R~T_)rvD}w8rF425*ZXAZt3K^`K4+HmsGC&FVRRiVaf1iw9*%(e+?a+~7%gHB zr;M}zlu0y!%%klc^W`Q)4?dQc?*%BHP|j6Gvsd2S`jhKZv&Y;^C?O|2_pgkadbR9u z^x&6buY#(hG-uzNu<}EE>%ozrh1a3X;TW7p$x_996^&-ip3pK%ooogBivnA;jW3X} zLOcbWvP}>$R7-TVQ~5OZY>ltmmY3M=rMyZYy4l~&&1*!NH}~n2XZvPAwHu>_GDuv0 zI6N+c&*9W>RECtB$_=*+wpr12b|+>V`aNK3rJyKlaqmTFsmcw*G6LFkP~zGMzTst0 z{YC09OfYZ2_`HbV)tRRzk}>?BhC3TFE7uI03TR#!DboRq(EO+Fa(cf^VtpAs!?jE= zH2w{}j8+=BSWEecC{QsJ z>^NfP$olQNk;OOJ+_IPTpTlhlPGIQ3*uX-6LRHwYHaBfaT5`Q9V4ToloAtCA{9u2y#N&&N5#iylz#&c{c|8Q64~(#Mbh? z9T7FuQUIoQVU9|dA)j9vWh4(k$1S+$-y2fu9mGMxq0hz=SFGP-S|QpYC0NdD9hcd+ zi<_{F$t!Uwa*_x}ttg>EY$l)ih23uKE!-loF|IwUvp3*dl-XVQ>9ppB^>@7YQ$Mi* zA*yLTRNLF&Ap+mnvT5`J!9rE;g_iWK9%=uFie`gE=B1qDY0pumlSu85e4)?f=wdC` z2z&9~mp_~0-&^raI<~B9?zQ(_Nxp#yYodcXZx|(|-Z@Sp6WXL3-o?E1gvt##wshob z%FKEhzPAkByHlqfujBh*g6{YYbmi}^O<5U)%{Y-Y9BNaQa^@VhwXsRl0@)Nf;I8JRGcO=}ycXGRGjdqrpG`5ivApTH?1 zs`$8_tyG;mAyrw2xwbuK?2Aki%k-BjD;q!$2kTuQ{NVQJaS^FjW znI7&I{?M$uXvMe4)%;0xZy}?M3w7RiEbM2zO(4M&IYO_{j`d{+=(=gN$!>+&3?8^! zH7_p*y(KOv;QO%?50wb(O5qngpi9F-Nd|dQ#$fQOFgujpD~!CMWlGiYTyJGFXPc8O zwe9L6?iB9KnK4vfM4Q~*Xd$6H<<$Aqa-E$#GOjEa4z#$V$`4h%$ATLTDf`KN;bB%0J|D_oN0eVcn+IXbi&MK{yxYv? zX_;-SNke;CC)eH0_OP?&sN%&NPpt2Ez0<8?)!f-mZvw91zx2Y@0M(w|jbB3iHs#aw zIqJjRSL{UUkRD|X_n}JW&v7!yP^ja8YUEngUFa0IDqNP^Ru>lFxItj|+sRsH7FOeKtI1RbWLl>BQ< zld<}Wy{s(8CD)Dh*I$J4k#jig(c-Q1?Fzs}3XgGBlrSi2%(qMtr|m3-0TbJ`w>a!R zpHB?K5!R5bkaQQiV&1b)AxvzMp$v>#GF)Xv0e7W5D&BaPy2-^tZ>wU*WBYkJ6~2W} z_hc9}svua)2yPz~pRO7f^3YIt{{=dCw|S9}@MLWC+f88~Nt ztIp}rOz$k)J9jrt-AQt@AoU_dHa7}J+IVPFU}*YR^?vfjZ@gf!p|sX%tT48~XNH<) zvL&bWOO%YX$4wEEDFf8 zpV>GKyo|8l9bDtq)T4$$itoBK)cRBuPjr6Q|CG3P%a|D3dt(=QV^An>FhL-(maKRz z5OuZIik`RrE+1HK7hCft7MgYRQrby|60UJY37?=Ln*L{pBJ^*lL7=Q&9aJke=XBgw zM5Au2vj(B)BinZxEn^&VN;Jjm9DE0n%EoKMg3QI29w-t6Dia1X;|aT&<#-Q91{r9N zJtB=fjcsW<3#Y%>9y;)|UbU&Xp@uUsmblyF1#)??VW{kXBr!ak*Z4I%l8R4gfPtet zyJF|cXLt9CB0YK?q9eq4QS@j-`#jBj8mRO->c`r@@Yka%k+%Pv}g%}9dl63;-H+%LEa|6W= z5h+FRjM&)?3L|;8Nv+`Or2sNgqdB@Qi!h6XNbYCue`Nzq=C)s)lqknH-em+K!RQ7s z)MnWCr5-9nYkMCmoa6a?p9BTz&)HQl;rfiPADOMdOXVvE7xU77MfqF&NUiJaG-HRjSswTNk_T~cv z+kHgr!!||F)g^bM#npW~>cpKFeBpwxbILAPc#U=tW|1blnZp0=L~z&GeFw8rCa-FY znSMelYbz;}LJXPMEYB`#FR8eUcS=`HB-yMRPBm_Xn#I;Q#Ms@hj%s@Q3p-wly)!OP zZG|lrN9ZGNR6Cbj{OoN3#hwHTCK?vuj%XE&W(HoQqHAi z5H5NIprrpQ^;=@#h223wnr)2 zKOk)$=GECncd=|GIaLYmG9=M*+AkUYU0Ovkj{`2pbgBFRcMBWR5AhK9lSNff2bfnc ze^^`EO$*2EXU3VZitXHni>o5|b2BOd`Zb>e{E_on_?Os@GfL-aB?|?yx)S+RcH-*<=V3`KDy(1n+4Wjcv;1pkmqmJm1z{Say=ImXu|QThgZXRKKpIXmPvz&yTGFO z7_{!1LQ}9!8_{mx@P{p-_4N1}5e<)=u#WXg_O81W@<}9S_^j&Y5=+-vP$ZUk<<54Z z^8mrpSVRZw-#xql^0S5a?}BO7hB>5~gv|i*adLl4ZLJdo;HzaUX`TmYk^mt7Z20S% znhI7+K^=R>$1}x8X(&c>K1DsPx~hQIyyDiErxB$5mt^)<${A&O0Gd$Aez7DPU9>wW zv97aNI6%O^CrjcsEe)j1e4R<5+AxYyPqbw;?inhhd1J1$HW>-Q7`2D@5_6B}9nW~jNHxxeQd*7cXW?`y3>{{v&mT!>S^9AOtJGIann<)( zf30d^@&qGO%c;@D!9jIdTVIK8FQrL;Lhf%cO-5*HD;;NM!)wKg66}tF^dn`Me_EyK zczK5Er&q5U=q~&Ex(ZfX>(|TnxZDD+Xu3pCLn(huLxZR(J%U2?e>vI1{lp8do|7(B zR{U}O;zLev@xR$KLs=KM@PGC1ho)r``xWmZCV)n;hIG zo%3BOzG{3)BwN2=*zSu(cZ+@fwMq171hc#xc~Sni;>4qxP$E?cUl{UZ=1&aQyaRum zNgwBmJcXm)XlwJdO+&q3_HxpaPCBdH_sTIwZ+z>4dy57>qB~tc8B=5RZ#DY+_}3>C zpCPPI(<65JTDn}HY^^mI+Sb;PEDPFjJqu2f+WQT<3cFMNi({2fMQJPFUgM%&ebEWP z5w3dk-*S05+2lk^D}1+C_$i5hT&;$s|Fcz6EV(#M&N1)M6UAs=%h~@J9O^xYBOm2{ z<&Dw^QvbLr#gbnfTb6_igv*Di2g1lm=V*g)$FYJxcB1dZACq@o8Q~tLes1``V*62H z=u*s`4$ijTHI=$jk~*|Nh;t?|&O)mb5xW zI15;I3^ID@k>Znrtrj-H@frP0xc(UJy9UvjP$=5V|Iv0o$Og|Bo|e9{=95y`N5# z+EMS?am~ug`jO3TG)Id_&VZ;ZQxTiB>tHX_sFC~QFJX_K(>V#Bj+lM_`xFUmj{Z~O z1Matt5(4l4v+VAFnW6QuV$=d6yx1uISZm~eDza)6h}{p9i&_8h|Gs&S)yZ`l8Xm@- ziI>Z0SNkU+?^*1uC4A3H?X#s3ztL>}SWhU0wINYduRF(c#rM!R@WT`<;g7a50zqK z=m-S`@%^2&q^7sg;R?3NqwN(5s51e{+oofew*+rG3UV$wa1#nbBW$>nQf5o*(1V>n z+3|mxE)A#`_*Fa)g|pS<(pJbt7rZFu=983pM06s*HHNxQfE~2F1Ik*kPJCr0DEgCX z-U6KMIb!wu+c#_LXNS&N_pipU`2+=X7Rh#0Plo+@?%;V7E?WZir*Tfel;y-c6YkIShKQE@b9X3WV8!z;cff$h&XGh21 zF9vYApe)D_P9KPS;8%>C{C(pVQaXflv%ewlil+I+b4s(L7Iy*x_8o0JZFyQ2pN|vkwuSi40?`2IjHCr?6E5Cmy-cj}s zNpqLu7I;S7i6%SDoC!UV$%Zpf2>OWM-JxwO{(X`=-W_M~{t!v)*-j({F*h0{yG?$K ze{Oa$=FFPF1YwO(X-0ki5%l`A!6Y^v-F6rwy7p7C@5`DaUwHoxengn+nmo{psIxPG zNW>{7BY&J3|1Lc}{iKhoYGX$NtUb1;#|VWaiDNU6TAA8y7;hWcSB%CMi`{UPvPC6} z28}^{?d?g>C1*cpaOZj!2knC=G9u{L{HHba*%cU1xu`KY_8a@zWla?g3({ZIXUr zl54NQVsXY@#AwKH!mVUn#-_0UJsOwA$a@OG8#xL=OYxT)fl*p_o%!G@VSGvt=3vZE zc@_1KFJ_8VJ$&h2X1pq2=B*pzAVHdhaFNR~gMW*8Jgnt?q@cvo33D9vt6caWCnx6< zL5zF4t=908Im38u_(_YwWIeUxiQvrQWK5~XC!zBj$b_n&))+s_1OExv>o+%&=Ts!Q z%jhv0qF8bUZAAGjE6)^=k09Q&Kaub*M*n&BD6g{8XpEae+ySc+9>^yfNBwN)!=Jpy z>vW9!)Fd~ysb!sL4H>%4YdE2UqVRJzf80-Wg`3wwguf;=iw_=8<&zH z%A7#5*!vLKlPpka=TEYe!X-UQHEnmwe3sR)^>xASez{HY;tHj<$l@wtG(?AqW+r=2 zOdt73EBIh<{kNF}S~{I6sDHkJTLI)nEH5DuAb# zRbwZs1dF>p38?vX-6;zcLpXnuZB`jYaC5s)facN9sYHz2_eE`}VdqpqtM{^bCF>9F z?)=Pkc9qhPKGsLIZlb=X6V(cXNYtwH?mD}hOjCQ=+uN(5!Oyla zlh)ukG54!t=~I^6krcuVv~3|Y2f{0h%Q+3#SNpGsLi!C@cSLf8NFx(+BX}~keh+>c z+9(&^Z=LqvPQ827ecJr(xd400>1Vr^cB?1I5uR!$?~Ij6A|ey5w=%{e15wN}fBz;E z?)Q255YD)3oPI(LPrNV8aNn!vo5{Z$u(m5&&dn91=d!6DWu>)IK(RWc*3pu8{;+xgHOm^Z>TSCHP*t}te3;4iMaZ+ zp>5>ww@#E_pn^0sc;CnpO!2?h)XF{ldcbrql(~8Q_7~`A`T!aaYG(i)==D(}B=f9MdgGn3+2 z{Zl6b5-sxLD$-=C&^n!q??KlMubW+;Kaxb03JE779h_JKi$wEW2^mPmVUJu-Utd+< zLs98$Pr`xm0Sxbpf&q&NcDBS1?W}k%weQct6NdDi-`8A3H}S^z!22#XJ)eq|AIp%)t4S)v&p$SEw19TG>ZLr+g?i?a2)O= z>r)KrssTAq^`?w>NR!Hn-~hr!)yH;Z7=RIA%W0U`yD_Qmr`OXuPbG4Qbr)Y43!;N5f%{?+`h()n9USECvC(`b!o0k$I z=ZM%){a>QxzeeMKzvbij328F**kAh`!1oW(+bWA5&UL+0`M0?37RjA+x!aM=0Y~;x z`p^1ckc9jH8jSz7`NQP{S@M?|{UwPkY8v`XJ54Gss$8-$)RBSruwmi9!?hJEjR&?% zRezfto$890UIJjI+ z2G23@sGp`bRqh)w%PT0j_#8gEAn!Dx0~`rEuX-d$VA!jEn5s}(PojcZrMbOD-F zLjmQNt}6*l-{%{Sm_lPHKP@@^M3V}`OIG-6tBEeu2!*wSDsazg+ow~({u%xTlm7J= z76JZvpxa%F(<`lrb1-rBz>;i+{4-?>sON^uU2PDUIbQ*e{vS?nsUOyvk;F>tkNS z_Mm5EteV_>03tq@fF9hc>g%)Z2o=`j3#qGBHJs8_IdlYUJ&oT>YCIBs*)bV`Zycy?(Zbx!XZ#WY9oizg_a!!1iw=2e1>jCp@bn-Z7Aq{=%}%bH>|Bk{pOTly{k`+5wzv5_o9zU2n{=C81nC&( zxD95LG?ja;6Z}Q$)Ut6sU@pDkkM|z{o)_&C2Z6bFoo#GX-S;j^o$Y$P`pas{igECV z4yxjfI_yQ2H)0K05)g);NO~Gg5rcYL{(iIT28h!|-fMa6yZeAUVk+AB67x#A-3~4T z0T=4La1dcWELN*%kg3qbCfjtEYMziZOi_CGqYFChp_!&}cP&F__ZFF9-O;i9XJKsK zqE8!z`hi%7`XL~1Ndnk>^}8X^Ro+&_x|fPuop;qKgl;3nHVoqTh_h`K>DzQ03GaG| z(!dGXCkMP?e^@F0`8>#YH->q!z{PLt{K0Q`P3L1+>~aHu0|T^q}HzjU6sj+%#UC=>^heKAGt2!!--+&Tz+N z38R;SH8<<5-gsq;!;$Bd3HqSp#Q62ql5wWGSD;r?*eH;`ZpzMYl%K`#1b&M-va>ZX z4Yf>iPk(lrr2Uwt8p0EOe{_8n60z87z-t1`-4|~VA=}RDqj2cyn+vgGj`jIy#BI%y z$wi@DZ+p_FxY~{7M#y#Qa-*$LlZFQ=jdQXGd-IN%kZT(&ffeiR7>+Y2o@Orkvi%~( zD?)0n&CMLj1^saA*6d8YoKEd5HS>exE2yPg>+xZd6EdsYLjq>~>*ZDLTtb zYB_Uz^V?eYAs+2y_?eGG7{gJQ&2k;OG^^w!q)s-D8{-q>wap_t(IJ793Z6mZ>^MkSrWT|xys#oezWO4u-jBHc(D82d=}~Vr4Kr6@ z?}?U&Mz$EMo<7SuoP~YA{7?mbow1r{g|3gIXE-lVzT^Dsp6diKhyEa~e)mOEJ4_2# zG1`Wiyrm~B2Ms<)l+u)F3O-C5m1jA(zKNGis0f}}nePUij34W30Q(c&hI&*TTJMlH zy@OlPS2=Eb|4f?P+PbL|A(Ovh>8ang3jjQc++Io$STqD)$-`$u5r#q7-TC9T261Rq zA5#6jOwKU+=QBt&w$w9IO)&ShsV1XU=sn8)1K8$^W_G(`EIdQg{29Mxj<3RM*c5ys zhJmL;l+2%1AN=-H453>R(esS$W6-Q~+X&ZjSZMLlZ6f)Kim4zPOwP|CT~3wEMBV zVJylx=ECb5qvKNxYiEV7Nr}t2&o5Bh6J29DoaU@qz*df9Ru5LA`syp<&vrBpbSRt} z3`zhnb-}mt5{b66l~uX{C_zhgj@um~NAIhHN2x~%UG4PxtbLA3piTW|ubIRn1}^m& zb9$_8E~cGeF1`(QF18tUE~bTG?gbdab@@#3eW11|90NaD|AYEo_F&{% zE(e9kbw4l(puz65AM}Oz4lflUTFCKy?%ZHCO|CAVfT7>&5D^o9JJ1S3Ec~!O0W$Tt zVb1uz_u7V2d(%}_o=*3@zm~v_BqNZB&=dFR@DKMtq5Q4TUgL!3TLcu=i0F{~_7ftQ zQ$=#EBIVyxK{4U=lo3N_V=VHF+p_2JzMJ+FJ#JHq@l}ePfpxvQ9ghW8R-hFJ9Af-~I*pM<2+qw;yLNFgVOKuL zQJ)4s2Fra0UzM}(HLc6jOYoYJ{mHC-+l<;e%KCGmOr2 z=%M?IMIJZ8D#Phav5&Kqd6yKH}) zp7ApOstrK!Pd+S-wf*6HUQAv|J!c&7Q5(K0U-k~~*yr22@hLPyz%(@?v|;#DW118hk$3Nl}Q!1cRUgASj8QrCA{xDtk3hr zw$EW+dHe2eN^23RU~SYG~$c?e4;=fPWlH&vkT_)97#g!SE_PisRDJACW@c z7D>A7BMxLl<=jy1bNut}deeK?rKDWXBK>Csvd2c3gt{8$q+{>juaA7=bxQBK?D6!d z!SQyaXe5fB$#6?lPMylyrHF>GW2pzHvt0Zh@^V@p*DhhD-|#_6A><|597><aqGOd=0*)YFR`sfxj zqe*hsj%v4~R}oiJIXfB(tbX#r=s>M;$h#ezsdclZJr2l|@Jc`7u7q0WDN`PNss15j z_IWWcy=8CYkl1giCDitoH=PC*EiIW>{jO;IZ)V6Tc)Xv(&@U1c479cN!+$*9ZaR%B zy%_P^drdD!N;yi+RT0f%(_f>|a?7nEfZ~$#G>4;4G!+#urOoki zM})~_DQU?7x!_>FKnk(>s8>0sh<=obZpgMD&-WAfAuT87Fx7!g{fI?CHxKcaJ$ek; z@j^#y`OU3%lb#^ySO#WlrQpp^ovRc={3Y8W54gc|h>>80k8B_8TkU-1$$bOq@G)zH ztK*W8m&k!hRmN`~QII_lcs-D*CYwDb0c}cE1}_88oA%n2(=FMXAps1y6Jr<|$Mb6p zi2vDRN=nKtgDY%2yq>K=ZTe?cJP#f`*fPkY?J$Ct0tO5u8qpC!;MC%Zir$;E_cl&W zDelYt5D4Aj5pz^&Ed4&p({@KQ#6brQ8Jr^4q+Z z{r^IG|9hJKuhh1SkV@vz@VLqDFVoY;to-laAF{;J_3!Z(ZBZ`)VDIgppfO|nETsHR!R7+mPQ~Pq^76Gs9=YS zh1HP^0pm?Btb#qRe}F$RHFXR?73eAj++Kdl&dy%`rvSl%cb9p7 zn1&aR5C8Ph2(?K}1Y^#K_p!Ed00(1VytXJbN;5mv81{4K{1^m|<1HE=s4r32Dx!bE z^C(hxaZf8Xrf4=A$S#(ng20K=Y%N8Yh?K=7M5H*%&bYR%;!ZMEh?VZ7;pyj6^d!dO z=?sA1bVJU;^bE!I!BchH7-=Y?zeuYjf4M;Hjvh%|8o2H8^9!y+bEU2u)~Ftl1xDw~ z#TDC%nD-ln-JFpZPh~8DB059Di>E%KqD{=tV_je8tSvcL-%qJ57G;WhtzAcMx(zFT zZKS;=Owmz1NN92;c197CbZGHau1)OPMiN*1krdZIcgK3@Oczcur|0Z>v(CP*fopP6 zMLqqa2;Ek@QN+aCA zBE7TB&itBuij5ONW6UZU=x9hYG!(ZnJ*d%iI&{1VqjHk=_kYmU)wQK(wmU9ME#`va zQSZ^TUs~qc9V@t=@}#E8bKhg%9j8)tmXwf9)WwAE@^~p)r6C}uwA9_rQ7}@ezr|-r zh51@#RB!~jp%|~s*N!nZY}>0^@A6=J1-~Lr{%{tirP+BP%zTe#KpRs>OR9S6dCJz~ zDNKP{!6LnV_b92l)1z~9pW$cubocXiB!YYzRX>$!HWBB08o*vTYI1?M8cYRPJuPC? zyZM$`HnGnsn&qj;I{$*aKGAZT3R7-~s=4I|Nn<_5(tE5N!_{raofm>^pKRa$!fI-)#FOc=qi1e3UlMi~V31tMPN^)9 zW^geMb@&lTcJubz^VFqvo3?4U6Wa(L)}q;WFOkK%@s18-mMKlTiAlt@d31er?m8L<==9p2j3PA7X1S3ozc zq|oonHntQQsNa<-#wTKgAG{B39ew!v!;6%!Nu(Y_0!zs9rJ)_*NS+46e;(`QG@Jvh zj(Xj>=$pFJY!1%34Cyj((PA2#UjL5yx0$!Rt`XX|=vzA9Go;7A+0u-JjrKUWYM838 z8ZHq;|1@-*Sv9txMzmw;J_&Q|Psiw-jJdu!eIH&~7F~NZ!ngg50fTiAhUQ|uk94M4 zv4GzZ7^QivUVUF z4o5c3x_dlVMMuWW(HWc#SEPy4P?WgtRJ^R zG?4~S>hQQ^!)f=6Ps}1S1^JcR7Fkk|=64ZX9LKYcKZ_Oi8E=)E-l()~Np;}SlqUOy z&D2oOgaf6DZZ4=-aMAWTCgxS|t1I{$cliwKOl>Fm0<2`3SHXgUcT098giK4#XS}+# zWgoVBy|xnVKU{jGac}otI|c(Y_s(g_>;q%|Mqb-#vYPg+Orel)y`%O%Gwn!9{G%H2 zTT~zo@_B>-7g_O`TcMpx(8g_=L}fD+@Mdcef5gM1*T-*(kD|{FI~Z zHjlsObZT`?GZ=1bsEm>EHN{hRn^HR6uv`@qpx3r{@S&>Ztqc3%Z?w=(a@7b*Ut4aV znMycz5@?B&j|(&}WIHfBRBT1H_b6Iv(&ID-;{coQ^eGVd(~`OL+xOwY!NFWtV?LS6 zjib$I#KfE1dQOaV*L5HAv0xQbx?Nv*rnNQ?EeS#&J z=?&NF##bG;IwRAFk1{MKo87HKaR3ZUkUJ@{x8Vmp;!yKS%$|gY>Q03#ArX*4>!E<IdP`gOZm)fAp5W1lD8hg1>giLu{;^=N8%rJ%Zn%M6zJcU!a+~NRWdLDA zTDr2dwES~bIgOCFPP^M!=m6Hukls)t)ixW@p@X^)gN*D(wU4w717b5apDgO>C*^=q z{8p7D1C*LG?9=1pIbj3@-91#P=HAzQ!l}sOg+XTr7_)ijPj(&vFQAR(sbVj#oo$^u zY66Z;Z|%KI2js4tm&I$~@6EJwIFP0rpHu@gC3LvQj>^Wc7bv=P z$`2^3X=2|6Y^ghnw+B*i`I8im4Qql~f${_+qdnf89}y7FkB{R!Iyzor!>?$oI(K?^ z)YPV863`xSId;7c#l!npmASS|aSgicdu2E5kH{t6BH?hfyNRlOCI3qTJ$FbcINSK6 zfmOx#5`uoht+l&vXkP=5^(lN8>fNxBmhtU$t0OxfCbYM}|HQ_|remYv)3w>vj$7q{ z_$zM$+jND`a5!=Kirb?y2uG(zdX(#$G{+)!lMHDyy#Bpqu~0+**g5l9_G&!5JKyDo z11z(f^bin1w2#_4j2N6#QI;&fjL;9$>W+I0zI!As6UNA0_I3<8z7}taYf)RRE{8@; zMC@pV_j0=z&2lVP0a_-`VqN_d#(n7 zXHpcjBKYlrfo_go!&0RryHO@{c4_I6X1Y5 z>6Pt>!vYuK5TG-=8>VZ=d7`ACP|IODRpY8r@3HS|;JiZY*ipv_iV4ho3=Br0UxbOW z56xfGNo15c$_D&6;-jLYlQ^g2p-luqDf$coMSU-5a}@8FSR@duc}clYX7X@8;=6p5 zJ;KYn6a)~+Sd5X95+5SK2iwL5GX0Ne6q$9T3RM=g((2=|sTx9JzVLc@yI--ko)2QT zHXraQXFI>qwR{CHW0&x4Fyftq^v}_ug{ky3u^snK@NxhJ!7J$H(y_@BOLksuDF!^~ z{uf(y)pJ{&^)I+m(sif#P@;1>4y4geMhAhZB8qO>Pfw%w4*)oCvfQM4QBMmBY(%ee zkO(SmvGNb7!#HT5?VdVL-MFc+d|p;8S3&{>Hyxo11iY{OcEIWM7LX&YZ_>qtU=pl- zBG1w;^tcAsk2Bnl+g@L9IzlgwHzhkkLX6L%vi)3j1a8Q!N7c>{8fVGI7IHdeNl!NY zr)({=3~b({@GfcHCIwf7sn1eBw=c`mW$b0)A=~>j`OMyJbTY&6{AO zrTndK6`9E<0Lib&x8K*eKRy3+gb=bzsZE$JgYQra#7~P2^2X(E*(R1J!@^1X)+a>Y zxPq1`*fY5)!RmqH2^4WZov|dP+}Q{+%6mV-teR8mKYm1!?(bRigQN#DeP@2o&fbA3 ze9XkgMk<=r0=w8plK?GAc^QfIC4GGtQSHzEI)P;Qne%7x2UYi-0B8H*U`{BQWj!Q1++#uhKT-~_@e4fb;3U*m%WY@PExbTuyV4GHM#ZC-2S)J*w zc*dQA$jLF<|D2YRmY(jq^%h{y_1AZH!cR7tYM|uNF8zeZng>hM)1l7b8%l)t4fFJz zV3+pj6}Ts=aqZOvk2ohPFP{6NWt9N76GT4D*Z6aG@OP?QjDFi1JMNHb3k&NpZT)$= zNs4Dbh#HytoABRLPfnXOqwIZq#<4wgNvcIo?<>>3aA{rsC4g9QSU&AydU*YwjKSGG z$XBYS=k&fRDiI8T4dR8q4#+#kUGQz?Lpud97A(_o&ntX?-wuhFpkqr2TS7P!W8WqV zZeZ9%et)s0G?Y^h0o+a0zF}%8o(i3g{*Zjl_b5uswIau3)%R@82;27ukMuCizbAb( z)$CY9e*ss}xyJ4yK8trsgq|=xav|@VzqzuX$mpy=_hqVX{a8OkVAg4OfrDt7@BYqo zAW~tF(E;=-i{uK0_ zmnO(N2U@ax_ZFN1$od?7wPvacJiXYS8|w9?2>o7`gM-6Pl`|MIXMD?I6maqQ?lyML z^^d`KcGI;@KWydZ86h~?o`{n8V(GXW561ORaI5YK>2b_=JOr z{sPtnGypn$m^1Y9dgnV{WgXZ1Ln69oKU>;tCca-^X%Cn2WJHCD+iyq}Z`Yg_P;<@T zCKee4-NLP(gb~s)?C6!1lmKEwaFo|-Ag*{jsto`hR^zj~|9AzOd%;fcA?qI|`rX)4 z-w1t4iGGxdKQKdyW*kRUFq0rCDrNq4{BCEa=2CQM_|8XvX|8u3)InVNM|->-u%dw_ zZs;5`INl7knf0NYk3E)h-Fe^bpxnqRiLjLN?H-?NF?Rw7-hUQy77sjAje@@`tM&n~!6r=v{;qBw)k1n&H<va489 zjgFG^o3MQd&IMik!9H*6{k4Kljb@|9It4^uA&DmsC;&ufC@HgAO2Wc0GK5^It;e%u z+%-rs2q+80KO9OdIG0x3o9U=*x@2F$&4`_TdOUkE)c)FDA%8hoV1k97%Nq+Lwng3N zXgA`ud^Ke=)^zCXp%Pa0%G#l;Q@n$Bk|kSSYX3Mep31pJ_a%}`&C80) z^h3Ish~?0Kd$Ie)>_36H{}q%ILMKaF@9@G1Xr6)2*ef_(kt@ZyS?f(amc1tdxFO7)8ld)^hkOZu7OXj~6Y1>4bEV;>#y!c{? zw8dRBleH?1^mjjgV!;vD(=YI-g|Ju&B_a?OVAfQj9dApfb}{wX;?E}R8Dzn|Q*xW_ z^Ai-0mT`@fGURSP$?8rD&>4e}FqetRsYWywD?3gyzwm?UFK4q=-$MzVN%8IS2+8$* z9qEdZ#D~ZS7MB4rZXz>MqN{eBu()c@N^D0RYOFRD+V@*PI%YRS4GoQ$dN=%CelT}V zJl)ugKz@7kZQ;UK9EHUgz{`p)8pbwXW7ATBCXB0kBnej=&Q>flttr$x#hLAi1#UUuk?>qE5Sv$G<5lQ zjVR$y{%ZaWAK~4tycQe10z84H@pv{EWwY;7Y1PH`*-vI~%Uf*C8UD?Ke14tA3yQ2j z@S|~O4k=xkSMtdp5xtHq)q7=b;coXo!zrX~V)4?l%~m)&jPyPO75awCq=S)B>Dz#} zuFpse=br(7B%#Q3tt!zr4qR=&Lm+nD!Sm=bP2c@6-Rpg(_#tMPe;t@)l*7?m$dsD4 zjp@-_49A7PENplXF&+TXZ<#qR& z^k8(LLt_4G<0cp46b{}km}vg@$962Mp@ULf$NTGAi4?;iRaH)px1)cY4u*6J$ouFm zV;O!qrDo@0tTRTaL?@qx{)LH{I8)Hidp56uC#%n@=u|9!jK~4K&&aTCWqsF6GVIup zigZl-fq-?tL%;We)W3GzBbNmK;J7!EtZPp%7@-Kh7=6nV4U7JqTqAiSOm|X<+NgFI z@HSG*>}FKof~_5xS7~3>+S+!KwH>Y;BzFs(!hpQPgLza_jJYE^FJ9L+VShE}DOKSn zAb%n8o7p7HH0+a$w4!F-Dyd(h6RYd{&y>Cgt5$l55Q*yPrS5bY>w*HoocLMo!EhU}AFF zg5kDmA-{g6ayHP3g%je8=_wi0l?aIaVta~(7JRp@_bRfLc>ZfhMc5OvsJ{wlUopIp z@B19iLt9jsew|?Xq*3i#+=u{VAeT0q=ylNOJHI2JC&GQeDE?`SJMQ}TvSz@X#Y z?+5o`?ZMWUu`LFEH{#k++0ld^p_>!i=X{3GM3?nqCz%FLbrRx%RJvO%bGw%-)9g|9 z0eC_7Jj%3+nH60d7mw1zPRDoq?S|43J()EWOuTmjFA% z0MJ4%e>73WLAP_oRpJ~wE%8afRe}L-`35^lq@Yv>6k6<&5gm4fmo3nS`_`J4yK)SB&pH;P`E$9-`^jgbkIX& z4Q(&k(Qac<+cEqkKlpL2O8$5c8R$Gs3j&+e2AWxkGxGGfV@w+_Ev)>_IeY%S42r}R zV{J(6@IO>m|1-4OzXth#uh0HRt$>xcx2?C>0ILCHs3AZ-3yfHiN7h0ADX6Ml0VR#1 z#TGqwWxav5zpDC{#~5(s;*t_m=wHfj1?Qi#y_%>}Xm8i0m!h(2(B) zxfk)pXKDKBC!;4-P;hg+ncs83V9l68}4zs)A%>_)R8}HlDv^W~+fdIAF8GQ2T+6|1{mRw5AVZybfOJ@y9D5eUd;-w#J?-M1CtoE*ySUEl30PxEPQZm)pk^i~sxVx=foUyNvl+;d<` zyzXn@7t-=jG#uwHq?7)w(TG*Ig=x`P{!TcmrOw!p?P(@X>oc3+n*gN|4L-=AojSjo;dsLY^Gk};Rcc+Jz`n_73dn!q{S zdA}B-x$xD{Zk29mLCN4Q`Mh!EcLQ|sb}T5NY9I_%TpSCE z`#J}d!^24gZ*QCC32cYg#>B&ZzC5Cn4P&*I!Nbw+XSB1-Vqde30y2P`4&~M8q~$o@ zGL7H7Sy}3t@qbu~rKE%)s!h0g8 z({P7+aj_V)V}Ju^vr7Zi++h*K0bF(_^ucKNT(+8A80RP5&5Kskf>e5YjwQC`olBn< z=Kc0XW1a|+DO4dII}!YR$Z#+9t4N!U|0~^uGx|$9;)-^%yX24JZaR<1RN4qNWDO&8 zj3loowzAi>1@9@Z3_%iBGApGinPdVqU`;1_*>haAId>VINvrboqSpDQJ|=yk=pQLe zZA5QJmSYOIgs0x#&>vkBadfQ*oPL*k@n-e+1L^U>4xVjqQOfEIu`K_rmQ(6xM1UNd z;B(an3*;gSq^x5-i?Ow>+R;*JSn%ZZmUGNkjX@tHS}_3}<7v4@nPBV z*}mOG!XJWt(bfraH)UR{e(a{bey8JB{QBnDzo(xv@VMbLTieORj7#(-HSflbC|UJH z@670!+Ir7Bc_Lg3>v=-6MytYH)f=j)wCC`YRznKLykxph;W>!JpooDsKt>Scop#K| z2`+BWk^rFsT95a}2PZpT3eySxrTb|o7Za4_OTKt2VB@Hr#+2OhJlgN_9f*wv()siE z&7%g0uoPM95_ZWPW0Ys%ifS6(V)}Rh?>7CgV%gWvRuX_Vs#6R-B37)#en+cG6tj`< z!B2=f^@5kH-ot-{c<>&0I~ery$aLH3U%D5~Xh!cY5wpa(Is`MA4A;9FY&DEtIy+1F z4%>6DgguVU*i()V_xPqfp4cX0<7j-)!m|>#Es|NVuq!MVW-l#j*;BjO^0R8309&UP z2wTo?vML0v9FB}#={C06+4OE_M6@pBDnzRkFo#6W1xs0}iAj6M<3Ji2w|?5shTWNl zpO%ve>O6cKFPP-M3!62oR{_KzOTtjErPZQdi^-E?e&XgZAb1oC!@DXoMWJhG!>XDe zD6Tj`C?)Y?FH(2UCgAdXjdknmp|0NNajMI7f*644y00oJTjgok<{zpzzkV%8p|RMz z=C3Z41FCEoXC+G=wK z;a(hJun(~eZMm=3xN|Ys2dO@Pwf(}9o*uOu8_g$S0jSNMihoRfAsLmHeyhbJ?J=FA zeIYe{8NM3x-pu&sEis4BM9DzHt-$Dak5VU@q42!gIA(s;>iO9gAFAqUt3NKZZZc4Q z>q1zT^iU9Gwc|+5tz^4|)PhRi_2pIm@8{i@f#-mRn$rKPr{<$XxAK{_!ME64UxGZ2 zhPT^gKHIxF&A{Z`*zGkP44=6!v$rAOPa!ENd3i@#W04WROH`~*pf|Jw>~^u?nj zLIUE@Xu>SMDZX?7%10~L%bP$y+eUw1Jxxivm`UL|k*pso(8xG7wY#Q&Oy@g3Xu#L8-}(Az!*h$`sw_$>4c1xS zMhD2Snf1_Q=q-GdiQ)?0lik)(HcNkFiLX%D<5A8MEi=ze0?9hk%vHw!*csq3xLHyg zihyG+3O@Jomb_2*{nY|e6usZ69IjMgfj96WWRF-^gRgo7InPMSWfyBMuKrAd?Z;d; zguc4&9?#CNB}Or)91lCtFz(C$&w>cZLQ0_5i5i^c^jHcOuO5DWSL+aOV3s|wN1hn~ z;=ONd@;uZ$$KQ?itAaBJl3!5-if(#+rFuo!cJF6ywZ(qtyXeg2+hNmONRXF2v}JGD z9i9fLwHYleBT_i2nlEauN-9!mGU)&_&hh^hIm=Pcuem8D_u;jZb0p6!WSt6ye814& zB`si{4KF``q@Slut5vAS9>YYST@4%Ht}o*v^YSkiLJd^deog7O^M)&KWcQslG=1<*<;3|1mUcZ3)o{K zR>Wqq{bC=OcXr9`ep#ryWYeT;8?4XRVgsO@!NlM|CgN)dbs+A3atFw7P~c)+Ka<#2 zvKvOAJ)0h<&$vNEB}_V%?5L;_NX~QmS!=x7!V|-9L{kg3lE z!AKp5u-WcY#|b*g1};5J3E)5{lU|PFjWrj1f#> z9QbmUxp~(-B~B*L ztl1{y$$?|@`tt7YW!K%cT}Z{rB3XbkwIUrOVB`;=qU+2pZ7Z6E;UxnTW? zXuRk220?xbX#`MmIC2!*m%h&)NdIyC%D_elV7H0PFI8~C3l0Ngm$~9qym%LT;;t|8 zT#E$1*1hCxH`3NGV%LauNDxHXCo0&G8g`_a_|Qsz(LMPz=W}ANMz*ljK|0ounPZaI zTG_3_8;n;3d%Mz2AB^P)ZhMExXZ>i>4rq4fOrEj%K<{B;KEErp!1B+Y&q?Vh>_}=1G zc(&>C6@|b#xt_sN3|;l~?5b>%VwH}(5(O?TY`7QALJ&AGEr_K-EDX|irGF>R^4Qi# zWo_maXMRJCa;2pSMXh_m!spB*sel)qh_#%~eX%Q7&j`_20yj_HRF#n=L7EeoUZz#~ zmrUl&x26+?n{8h|{Hn`RoGOf|@M;+Pc}i;_ad|mtpQj-+koFU6;j8m5{r=mm`lY=9 z=Rzci(O@}NE6k(_yF7d<^W9K8LzKKqAso>l7Rff3jjv3HDTi=kUSL@GwXU~%=cY-Q z7Y#%)(iX3lA zl8bR}oOIMz*wt8_|3P$YHcMt?U=Rxj>x;cN&ds_h?>u*4ro)|x-hbDSmpu5ZA>V4C zZj&4uR||gOS5bL-;5n7DsJvHFmDAXokZ+6UImr-3*!*>WbIjdZDm8=Y)$#?c(&U#@ z%l*lyTZe*TisrNBW?#eoyQP-rFS{PJLP#6H&~T`t@5>n#nJWin|+V=MEvRKL(r_(FB2%)n6X49wyiuKj^* z$4tw&Nm6u?*?qf1m(mNOXQPJ0P`a*)#Wu=LV%c^5u;m)N>te}+U=C^s~-dpmTJv-U}&)Qxz>lh~U5q)QI z@p>S3#dL47(&;ED(P{qB{qXC@-Lu!&iqnrCBIWA+f)#OJ0lB)gj(Qlw_bxYm9PXE% zesSe^I1XNTNl8}~1pUSDorlHo`b=SY8YeMY0mw5nVon10{gb(^~0tJu)V(^2H2edUsN`v+#|*lMCYqFKXZ!ebAR3HMGX z19t2i7a~FiwsdNj0yPeSZ&N~;o*%yxJ5(|dmHyz$1ud$y7M_&3l`>-QKPB@yXSUnn zJVBi{GP;QU4N^uNge2nn6qMYGti&~ zwb^s2@$Hs+QV$-nf_?}6p`_}Y%gfh&^QO~(ikZ}JrH0r=K1bDb&vkD355DgHUHnvJ zShUM~c|^25YEz;;AU!XJTZkt`7snDTAQG`Cs-m~-^=G8nGp?>`6c9UYyR(!V#vDvR zl|nbAg!f;0y_qvijk|X=bTIU|U-%7k<(gf%gg8<#noI;WDL_bxZIObf`U}P9jHhI$ z%@|sQ__aulyEU}sX`WMYX)Pd<_gq^uy%`cFWn==>^Q#@eiLi#ID6&7cIEq^2=+%_HUS1GHwkFEIY3I2djP(5IhTkPlfhvBmgTJ^0q zGZ4R0qVd3_xbgTu(n{w1MyvN;1>3JmmW2w|E4m!`=OJ!TGz$m)5cBu_(-+i<;hM}? zL_r_7r#T*QJn8u`+(Px(no+IdirV7wu+N7`k2^yle~xG}zzPa3czh|HKyeHo8oNtWt zjj{a;9gO9iYtH%1=f3aj`dtr^&fD>**Oh$Q1ce}YmsCx`Fcg>)f22o28s? zYTcuc!)(FQz?ywrPLwd^bed#J`>~He7qaHw80^UBj#3-`5Ck2tiYq~_&A--t&8>I{!ZS76FW6@_UDRM~ zzEiK~+rj;Cf-aV!=RIcNBMHW=_mZr>(mGIoaMfd|q#<}JEJpx(8H9 z&AHy*CgC_2X}M@kIo&8XyvHAAk<=Z;fwMSl(~sUQ6GmBoWFF9pJP{{nbL9Bcz9L6O z{bmOR3r_v;+KdT}u4}kA?8sg&$F~sq@Uu{qS$dxNY9Q)I3%AUw>ZB#P;`tYSz~H;V z4|vXn37HlsFZ7#?=^{xOI${+CBS%KC8anN%S5K#uHQsMsnZ~6SbfkP!{P|T;VX;gf!(5R(`q zdOswVnZ$YHAc>X{JbWwDF$hs?HVh`_7i)fR7c_K88BEt|h#oE}`xNH|EG_Cnqho(w z?e4f2O%Bx*^3h28#tY&v*J%EjRzW=Lh(n;`jz?OXWAshFPLvXMmos2RSrG(mMdayg z*S&o#g=Oo5`hNDy;^UJZH<$BR&d)RcGa;8P$0RuOE2a#+EXD?&-**a?v1g=%xB)1A zxXxk>bql`@wZ=FxDk3%Md-T5XPzO4{8wWj<6ip*Pw~DXYHJJawPf9ddAtzrklW^+= z;u3lepjSeSh*Jzu*d1+%@fvKZZf9qs7LK&!>I|i_eP8B5IvVBj*1zkKRM(a{>wdQF za3Co;$#VIZW`}t9#2wB#h2Fr(in%WJ^67-|bbelDstXKbK5eyRE58oxk1#3enSmSo z3IaxwloSF6F==v+Hy?EY*GU`jZp`0c-P6Cjr%dMlmU(zR`!?R()}o{1(el9tNoKu> zEo#C5euO@qNXAQ4$UM)7FPRNE$O;on;@(v{MFBngWj4i1qu!FOpyUovlzqYnnL3iB9~#tW@lkQ+tBD(LS9-it)nN%1 zlqM>29%|ywYVm*&5@vR)Q-X9bSqDBBw9t|dU>Mu}s35Z59ei^Z%hqyxyCYJs*I-x< zFRn?l9tMX++f49C@=ai`I>cik(jaWlB=&iSEiSA~@jIkf^E&PoM}B+(QX-Qzw680= zWf|e92~eqt3UmlyY^kZ}`V9X3VVrdv{E5R18;i44z;)R7R?BWN`OP_IM&OISW%5Me zxk2!qms2s5l!Yxv31vNmJ;7scuQUnN@inWi7T@hmVRc7Y(-oStOy)Kue~5JIUxFzl z)hx-}(ld<5bALP{@F%|jRj=BF>e4JWbWyI~g0qIZK*H0<*&4lt?-1wpAP$4GmDuzp zJJ8j~t&!()kYBgarPDGnimvR&Ft1Y)o|D30_7C_|y8`1BXje4;YFA*ZG4PO6CTZZ% zn$f=-9e>*M20?>5-yyea=zAkv<)*U|5nPcz%y86S%LN!RDr*9|mx{T1YEkgf#MT}b z*Eq^Owij>+zgF#{kVi|eKF_Z6%99K$K@nvdeAFIO-TO`id6Z4!&h*QVSjfcJI2zi) zwDF2Jy&~DQ8?yyb%F-v`p%#k1jwf5EmtUOqv8kG!ZCF4HzF(W6^6GX=S6s_OT!z+i zFM)~ZvO(=r%otaA*@<}q^`3lC^Hm@5cA)m;TUgYQNQ^Jph;JN!&U&JW=L*)fqyl(j z=Q?E*+*MKm^I4l=I~ zrcG3^&RI{F4Tc-rr)ff?2|x?hWKYiT`te&f9Yk&?%lHz@9#K+SLg3oFXD37FoULgJ|~r08zmoo!~ZVhgcYf>HjjlFR* zZ}&KcpsH-WtD5vBF30Fw;hV z?8!0$nX*UAHB49b_0gu%l4Bje#C}M(;sA|fj^F+%Gm+cptGIdC>>XYccwaZQKsX|y z7I%zmyijqafBKx1nKL!fiXfQnI`1RYn%mgy`c1|p0njofi^-(`ulWweh|a_<7>qPF zz06b6#$fub%V0_W0fljHLh}v8Qwf1E_MW}@tPK?aGLT;-z8QxaPH%0jV(v9Jj5;Ra`P>$ za8-Ypu8hlKS%&Fi2vgKg*Zo^u@Zc*ctp#j1=fS>wo8nk20{p-oVvFBS^7VlTuX#ED zpf}*7qU0>Wb^k_V5rt?R>wMWM=RS&AR%T+?O+Wo=EaVxk4d6C^1$n#uoztdws@<}v ziDAF()CiQ(M8mK8p|~L|I^r^Lp!uw&W|Q3ms!eOG6=`TbsG#iT>ie*j z_$PE@4kz|R9x&W`lMf%}J4p?RFj-=FoF8?a1*{*4wP_Y@Zc~j1B71y9G!%^n>+~h} zKr(Q+h|uNr-_J6GCD1m&FJ>d;KY|QpHeFIngu;?yVlkg#JfA#xc7(8CDr$Mt3r%7N zIs|mFAYvy#p!O_bpkA3r)>b1jHeq0%VbE`g9oU`>&7S-~eaN$59}A$G z9s-`4#_iH?-<~(GPjWz(rZc48ohnjRY(bVwa!-(A+}849l7viNJUpo&xggTs1Vz>( zeV>G(tNn08^i4W_e#a?55(R-N?Us8^s-Bbcl53ROhx7=ZL@vrx&9}v=F8o?)TU&Xr z!vAO^h?{>dv;L!vkS{QyYz=QCEWYRudiA{;`?ofN1hUFC6?#q8V}n0+5rltr4WwhG z3KP`KG-R(}rs3`f6WOTWg^_T>J0e;V&D@2n`?MX`q(@Urt=hxWj};_WNPvDhC!l8V zTGeAS@@HEQ&8$BzG~~{kjr#(tq-g%RZUwVw^6wc$CnJ8pEdi3e`Jm0lL!)&0*>Agh z-j5BTTW=}IbCp7M_X8iN>QQ%UbQL-Ez^!iQ3*omQd zO4keF1Slf@sO*pHhxuvPHT->zfH~ao6+s{;MxPB`=hW)1`w#Y^?ds#)qn2@s=QUe4 z(?M;#aqpby(}xSo7LL+lAo4lpN$X||5Z|wdG!l^yjWApPRpVfjDx-#+cjmsjnJyX+ zURKlPsm<|JjjN#Eo`yTxQ+@DbXGWjCIj^A7N2}0heUazAY#8Vw*bsn0hl+opGFgQ` zP_-;3n6O+PCU}Ka6OfLAHPgp%Kb*g|xw||C*ncSbKb8m*?MS*UxcvFjLpBG+$q9o~ z?)4Xhm^^E~y9N|X{@&z=G|ZDFY56K4SJwBdZ0JZw}sT?qyfj`f) z0kG~hwWfogY%9L%?=4~wDy-M=B~j7EZN-orT1r}{w`ep+Y5{tjm)i?;D`6ikn_ZB# z4gB%8hee?0kD^nWWr7Sus%vWsSEY*X7F0gEon2I|W_Fn`G{eD!ZUt zQ`GePILRnJGG=`8WQS!^nfU>kKH>%P3z6GG-cpfB11*_>lxqB^2#>ex*F1u9nO&R%(`H|v5QHoE* zbt#yvD$7>2PvJ>Qq&__l2G!Na{OtxxMhlLKeic1yon?ZOA>7b^Esl7ECGep0m#xYp zhjPV+S@a|ol~E;?BdaL!;NgS?PZKUsCR~_4+=sn?gWX?P;Y4_aEfdRw z`w96}m;b3sHKpMW4bY1#Yx;|V@5w#=oRxdvR*NsGQG54T%YE@|#Qy}CQ|4|5JO5C2 zIh$#wV=Klks(lyc$1k=wNv}TN*7(_3kh|3Av$%0h$usNtuxji6`Csx=`*0)d==__W zfj{dTigw6U7@k^BPT2P;4@Q;vpjGaN91142;4u*1zO7dNMlAfWmbX0P?2eEo7LwZs z^qOej{m*G*F)nXwBDgFYqfjp79WQp-o=#s%?qy%(xTWyV4C;$$hmD;pADAo9>%q2E z$G9ec>V{l(cjvp|0>pMT%^=;3qImtkh?6Uolc{YJH^$%uHBpZ z|E_k=E#`&S?)570+P(gd+WnEOWBfUe5L}4h$IGaRiC_&B@6mhzrg)d>6L64|-}C|F zLYNfx6sz0xqR`xVN*jQjbF%8ggKB8g>RETf$4D7$)vafP?@b zAOphgSc|Q2^G)BI3YoD*-=FPL8nr*7xA(&n)bi8ZuxZfSnu>z7?>+ao!xa7cIrqZ{YAS7~drWd261hxp=FuN& zU_Yz)R~Yyyr7og@gsuG3gKwJ#2gGI6<6Ttz!#O9jm9rDzpn_( zcVAYQh7mpLvqJd!Qp@DXCoR8-An44fNl5{yxvjnfS^!GQYhWPycOvAyrR*EU6=={2 z+1IC=mnPGs4V}U8<*~VRvr&hkL&a9A3d5E zr`1q{6Te{xc@oJdb+0`9DadPgR;FKx;(BJxG%jHFY%+nw9!*Iyl+0+AVG4#k?b&52 z?7kB4LRb`^kGnUtBQ2JhyYpgJ%XIuc_tQg5T8ln4FCu9E2LQ$336UH=M0@`T;JDQx zdGrc+$en`qKLRIh@`Q(C@T4CXs8>I}ZdRWQB5+7ZDEVyBD<9$Dm~1Ul?owDvLp%>q z-eLp*oWLhqq+4mq12EqW?ij;+*x4tWt&Tc=suBOdQu?JS$_*Z?l3H@Dw^H8n0jkI&K{^E~&Q~E6Cdk9fnd6R~L$78iT^I1@w2)STNq=@+ z9crMwUW_f6+(T!U@-=9cVK_U{T4ay!M@i`JbORhjEPO4UbItH|A=c zhBWbAFLZniJa%A0U^9hPAEfjL?pTv;9rJg*$=JgN?k&6~z@*EM^)jUr@1;crGs}qh zn3`JOTPkhi^1`QL^!_Y$&iP}9dShS8mbI~$b8_i5S*s}-ih|9k%@bV7k-io=yT~~= z>8EhEP*;xEb*47iJI0MVJ9~+2)lqL9KaF$515F8&c>vOJ4`5AKR!6)A{LKemdITff z@mlg_`@A8ss%Vut+#>oS)NeBUq*M|Oim`6?`7058Z#fYZt=&<<6Yn&dh;mSu{B+ z%2A?~Cidk;RhH>;<|c#P?5b=2{aZYfZxsaxOgk^;Bdco6FgYC9{U7+R5T=Vi6yruv zHq!dQRwDi{gLgW{e;K^9M`~2fP1F&v<99z?v3#muAf@PyB(%yDRWNWq`$!_lRH8A8 zqF;uA4EkyJEu&-U#Q5;72G(TRH;{Npa1Rk+tKBU9wzv1`Bwc@yILyo!H)LESq_dDL zsxEm1PjcyVhV;9$xJ+Q8;j##_{tD(>!hNm}6VYH>#=J3{h`kuyaS|kj$<%c0>8j5M zEczKVbW>Am>kAw$b^tAu9QG-cmnB+OfaoU&QL%g2>_=b{qqtf^iQ3z~R9kJH2f)NR zE?soK0@Dh$jWs&WFwOMqZ^*YRel^)m&X;;`|YWjzJ9lu(Q``b zkhAQr;gmOk;QQ$x#0-bBB(}CB$F4VX?&GW}qc*RHe5a!q4vuSJoO)s_>p|#|t*4nh zls@exNkp;vH*&4c%eJja_l;N%JDQK830aPY){WA-Sd%H&1q7y-3}3(Nkx=qk@Tjss za!#y!e)MC!$%3sj=hXpNGn^OBdc$fO(9L-oV===cy4zYXt~mi{22f;s-)Os*)PBWS z{#Li{p*=4*{iSK&#L~7|x|!*CH=;vcI&X=fD}X~&1k z{Z5iU;_@zzzig*|dRRsM_Y(Ik`=(jLgpBO(aY+jc~GfJMSwlJL10q(SpQ`SPuv3T5J~LuFbT+t6s=RZ`9JI@}IvoCld%7-~cEcPXCC~F>=zOK?LM{RFd6T4r`|a=1|$+ z+=p=Bd7_S{|cFCc=Y=Z!_-~>{xAO*l0?WBSET{!*U!!nY(V)BVB=_c z>siFb#fQMKd%rO-1S4ogS^)$=%Gl)OPk=RbIBhmNJoJlFZU9iq!FSSgcFPd}r9A4- zl=A%i)>)8EClAys;NZXxm6-D-fE;h=efWcYHy&avgDCS0ecfZ2p2p zB%toD3e&{IBngu!sC>w-q0_mGT52jeBM2~L8tkPVvpQ|CHhh5FyaYpNk?(|R9ry9R ziO96oL3^OY>a$b+iceEJV0{c7GfXBIi?dbc=C<*&0_y;6}e@C=JOYKm8&S}GjILDFUquaZ{FqL*yLN4 zO316A0Zi@{oi7bF1gkZxyqexvr%b2$wuRjl$0oe$z6uFn_HzH^BlsE*_y~ko{^TRT zj8WgTe-BvOV{zxhl9LJfAZ(PSEOccZFdM#5Bb?Lv^KJ~r7Lz!vq&oN{5dg0rSLO%< zc=RcyGrGG*4uqmQp^vJwcfn>N@{o0iOF`ct&s&P~H&3~7?}$uPWe(>z#cyu=zy;g& zx_}WNUX+R+$U6vKZ6c*WFW9=SOmCEWLygdCtLf_Lv2!}nFxd(p|Q}8ylwlOtos~Bfs25}?`5Mq=U$89bAT+-S&I-~nX^1Fk=FGMd7%w@Zv3+k zTR)%awneywS4%Y%dmN(VQHn^G=<`7_$|p-9BhIH-A%o=d*=&@Te;TlC8u!0y;F`qw zQ-KLbmH$F-}uvAgu; zZx!w^0sJXX^1YTNJPkLKPwY(XSw)`?Z=;LKWf}-BT-&yJ-CV#9RCeMGucmV5P`rY- zx}RJqYo0@)p(e-x0Q?t!D>yy&y~(j(d%w2FO^^m$#;>x#z+HOSgS);|y!w&_5sQO| zicW5TQ`x^g(ytsP==^))eBik*Xr}Rd1Gbp27vbaaly$(YQ6Ry#QYd!+6YvLZPnyRM#nBaH*Q6ZD;^ zz91w z?<+N(cxEFx``3tVD!}%i9=#h&xB(&p#Fcw*s#lijf#p8Dnhg&JL`Rw(mcXO@wNxV*!9&|kS z60&5x&>ge(MDrauSOwh>O+P?>&ah2V)T^_;Td6D;OOS6Hm`?sCHvMxq7&|3Q{tdWx zaA21aNt()a;bhx3Rw1_gX-RhhmB_pUk;~DC5{Iz)copIRl#-78_&#eErk5c1Czg$V z8W2VkgR=P)tPcK)Egl3)H-+fynqHV|xveQlRK&JME^GZy!Hvd+mAfBX#vlMV3>Wst zE0lV+S%N1__=Q~0w!YMOmss^X5hZMEOiTyDCyi=8G|Y;Dd%iY}U((Y^>J-WhOZcaS zaBBzaBz%2$y*1@%NMOtun7VTF{0Dequ+hyT`=9OZiRlU2fNNG)N)=zE30_c$f zcfNFS$==kwFEXWdqn`?D@*9lWeVe$elF-16-ar)3Yds)$*+v>f&G61If)8M!1M}nr zo{XqCpzsXYS$QM)A^gmNvRQg%g0@snNf=|2JWI$|cjXbNRXJi&?v_(GjufWsaz;}$OYZN{ygdb?Iow6%F)KiU*XBEYlD&j(E#m%8-~QIv>VWqXr| zh3TGdOLXy#VFRxd56P!R7=>&C`M8wSmaG5vj#Y=PG=p(_Y7*tX&wG@UC!#h+CHx=q z5=Oc5>=$=@Qj5yo_B~U_&6I1nZ*FPPNf2vN%3i%eFv1+(zGSN|oXTxbV$xSZu2tTN zTzJ9CdA%h9K>IkgkmAuh&E$mR%!;w@Ct=-y-qu!7c0BhLdTL>rHx5XAZC2k3d;LaM z5gw8ANAGZnYvmnnn5cpm+`2%)tudxKoq^IW)%vbc1YT{ADL%p?Wfx)witSJPgIjLh zxkV(=U56T5)(n}k&V70|Sj9a=n67Ea^OGrW0ra3zaoFnyy)p9F@Ndwy_vf}A15{UU zw)fD5?(6sO#}>|vaYuu}Rz;&%__ia!a5OWJAhKcOv^v)vZJUqB1D00x&RPRL!ZvD+ zqoX`}GtYkDYBmH_4Mav)A9X#8_YG<`dpultGdSXGR0?4!(+Pjoku{zQBh$UZ?u=4= zb9`Gyo?$qceG?t{)|>WCTcLe@c!_(!rK7CXrNNRF1P_+2rn+9`lzF51^+&z_nkpf%QF*@ z%i{uPMpPc{(lH1wdO=<{mv!s}SfDf=LsW{Jt!~0Oeb=EVv8?; zrXCszE_K;s0=x{5YlQ7OFnMIEt8K*7r}L_a+r+7ax)bv4`b61?F$w9!W_Id$3HjG& z1_MB}T6^L8bw$7H?sI*f0pstVB!73*cOF>!!VXPUoTB653j513VO-rVjx7ssw3I4e z+f)JQTKHsj&#fypbqv7D+EfF!JZG@8c789=k+EF!-jzb0&uz8iHcO!JU30vF58+;L za@Z5J^~0z#J@M{Hu8Y1%v%{lAUkKdPaNBa<+um`5soti27iAOAzlTEU;`_Nz=zdh= zYu!D1iK2v~>F3>5JU%GBzw^||w(wG}ep={(Bl-Ddy>?kf-;z2#kLLc$V+RQCl`+R~ zrQo&t3Ys53VgWCy?KXM-a&x^K>4`olU3}0PI!xfS*%H~bAC@>W}&q?o9r zuL%eQm2Ga(kI(k3SJkKNT%!EiX*XQaF zp?sI*+!E^!?xTH5-oZT*&c8V9y!CjckM_%iTek!JtJGBV43S>7?$RFNh4t-d1aqfb_R z1L~I<=KW-2p3(fLXWLAPPG1%H7hiQpI!_bObZi!M$jy+w@A6K4^w2q)Z=Iw~6rlVN zEo7|S6+4Xms@D;^V@!Vp?!FyROehiUV}~wGMEDgsbF6N;+ueC^j3k@6VI-Y-4gp@A z#?ou=AjUtV*_~MvHo0xan9veP{xQ;?7cBbL{-p?pq_3jn(2K7y|lc)_RM@aEoc zwYrW;GJz02;8pluQ_aQAy`*D8t&qXDTl>md(OMnv@~71|g!CM*4Hgy0UU`1q?p)XK zF3?$KzL#I=SPBEQp*#n*CSFbuz4gdY`dzB^D1ZL4sX(esikTZ_!NnHz9lreGUGW)h z;5qi{dI=91hYq}l?W*68fZO4cj0pREoc#i#A+OH5PxQs5bbJec+j3s6-icJFVIiFH znhQTjJDi)0xi$^x#o2E(CQ=d8U2~HVj<7lv-*ox+JLYvotgD2TfXQNtY`ykpNcyDq zn!eY}cAY+RBH@W2a9kd`-7_Z@l`5Yr78>u_k6z`Y5~TpV%)8^}X#Pu!;-c`(eGnr&&dKwmd&OlmA#|M4Ngm z>5MXZV@m%87B_Uy4a1Br)eI8g&Imc(bMrO5R(XKytYa5p$OBx|EJT7p1;0SHYn9_J zPh5-pODXqaZ3-b8D?KUeqeT8kk(IgcL;IYq)^FVHPCc+YlMc2G9G;rovtUry2D!`d zI?RW$cYpcQNP7+#X8MYt?Av3Xq!TTBZtOt$b{juXJivu) zQKkZb3iXRIu4?`>N%~6J>K@qS!AjJzvFMcIGECp=Y&y>&(gx66w}VJu$AEuT_?Q`Uvw!j5|Kh*@ z#ee^c|Na;M{V)FeU;OvK`0s!5-{C|wAcr16+5g3V|BL_r-{ZgkMWy_UO8FO+@-Hgo zUsTG!sFeRDwqsi_E{+`?0tOMJM%suXq91IE;t-Wi}@FuK~#WxX9XHWR+{O=L-x{jCF+bJ$rC~2$pEiy*s+cEw>MS`#ip9 z`@<5}9um)v#-RdxgUHEa*>fIldxs5_q)efJLu zz4W|Dak%>N`N;19x?IVg)_WH-j|L*%!^}W)*|k5;$@s;XhevV~%3jQ7Bi>426wW=r zxJ2qPnb1n!vbzy|I*`HVw|U<3F*8w@ArT(45JRW<^oFl6DmGm=_C3II2N0maEH1vx z>y3M(0qfDV4TzijWNkA{G8I?zSb{YL_{a)lS^e*|Ib*ir;l`FuyQqW2PfJ%>Ne{hD@b| z>V6<6@1x5|B-(kreo$hp*>oY(s=wx5Uatxjyx$ zv~Gh9{Q437(>R1Vl@aTuXc~XtXXLkHwKwoD2p%-$JVJOYjR<>Z4KsrD9;{$TWmi{A zGTZCCau=$7ruL<=g@77RN389sxNXK_yE#r;qzXenRQ7t@sB8M1ST{>F+@-UiVh;C4 zwMz{7R>N=Amq7dU-!uO=Ro){0r{u$5pZSX)*vxA^v%(_K@>^mc0S*w>lK6Fv0gT^A zbdA~r?P53LTOJ$!JW;v-9>6x#8RY^V8Pje0(O$uZH(SNwB{omg_Mz`|sYY!yN{xzO zAE=yxsw9gP5Sjf?aR$?HejW%PI$}|-7~LNe6>>+w;t;q(C{C%nFKcs(^g{W8=GUf# zUpfWU*xh@8Att7tUFwk!K)s&K0pITw=JfY{VtET!&MU(e2^ji1_36qD&TO5`k<@PqA{ME)Gps5ebW`#AI>>i~=TLP!MZQPC5OW=b-Pig$r+ z;i{D^qPfm}PG^>}qGu(>NkVFj{5XS2PU&3MGLPo%a6kRm_ z09uOTp7LaDmzk}Ato>6=Grhvy(n|uOxO1=*)z}y432^+OS9EPR5`-PTxBz)Csm1l{ z4F|)!u_KmhFd5#jj6R`xr){(`!!GZ8!=NDeh^sa{5r~ zlcAMb^6Rny8FIfqxyb&8X+$%8taWVVp_l?CQV;eAct8plQ~tfp!@x#OVeiQp_JOLF zOZ&Hzzfw{g5&i=Y^G>GZR#X?7IHY>|ISUNy6FQXL>9N|Lsv1NqDt!4RL7tP-2bb50 zzXW|n2xIF98?ufeE+*NeVk9^uY>Zy`eztm+Q54t2T)S`tn=8Ww0OZ>d38@J<|Ndk z`8LubiT{~Lg#A1(eceH8E675=C@l_79x zpeS%U)mFv-t}pN;Fr(~rG{D>2({S-11fPG;qndLv`)CFDUkV3y0?PF7Nq>-+fVSzz zg0K_fGHXS{4$qm$tf{-dfKM(rfQS)dSuiiQl~mr!nLs#bk}N5Sl9WwDmcC3L32P*pHQPV@23TN zv4K#0t_v=g9UQnZwZD4>%-N1{KWqTfJsdIvX?M*Dx8YEuTV-EQ0sE3{&#q}T!%x!; z9&NJAHuwR)hEq1i71A^On^@+Y3wo$QOi-aj)T1Fmy?Vn$3EaG1a?gbw`m z_Rf{zuxoE{6$F3bNzTJLX_niT6}%P{0l&hUx6}aVN@i|uVB4=To-+e*>yHf$4VkpT z7M8i-fdztzp3gu#f*+0I(E#LhtSrfBZd_TuP#F3dI4V(CKgvwxj$^{-i1_Yw+-gec zijGj5(BxIXRW85v-5$ve-Touu0>P{SD_fgx9tgM{wk9093qViY;fFIO1PmTWs;t-> zpI^XE7Wr~)n8mKHWy)Rpl!}4CFhv{s?)TU=uUT21IEy2mev8~`&8WM3m-(idP62|-_f3L$gmc{$N0DE8uRylip(CuFvuQ|EE8Ky3!ZvO- zB-n!&SPw4EtKGsDeGfl<<#j1WRTMtteJv}yf(40>n>3O&L@L})QF6$A3fdF?m?+Hm zp2sz$R2YGc3Y@2@uky|vws6a4==LlS z5lsn%D31K`-N->7CYKkb^f?)t2${%fAceyQ;_1V75^+cv`t$?hv(}f@D{tN(K`(=& zxNa6~Rz=F@T04LDs=6|wWQCEV7f^0QDM$?z^72K^mDnvkKh=)iLA{0&Tlc>m_;_?q z%B6HOkBxb1{qF~^Y`qj#b?(2oGDn-R5em$MvUDA5_q|b5ic+Rt^tGRTWPMdQXIknj zAxjncHi3MIHw5dO_FU#s5C74A3?ea zH|e`Ht)feARZM&9~Pdwb2MRXHWi+uR!O2$}nM%tvkP5(}DSEZX zWbDp}zLploc0gVp&p7P}R&TG&xv1ft?vumgZXlw%mQ0L$E;YWg9=R@dg=g>I|I}vF zPQB!zGvxYlg}nM>`U7H-(Yo*z%)5NC6`HzWq$rsl0xwqzII_ON4k4sU0kDrx@C>Kf zB}%~@T3VSdOY%vAh`%(#@+qts0sbCs6T#_OdX#wjD;r@cep}KVc4=vtCJfv3hr1yl zyWBO-WUZ93Od&9TEiyFq;_=t@(D=rhFFRfYj}?5vW^xG|a*u0EpD}r`z0@=sUMldq z2qxF@a{K!Ep_JkG9^5p`c!MR1(F76T&ZgU@EmreqJv1~+cEJ4IN=r|6HBfENr&+f% zPD57wcW&Alv4~97X~8dSh+=pplu8b0lNry9;t|UJ4cUq} zWddR+5eQ(KPn!)AC%&^KPv)i{FCH}1bWIsV1Bh)%t6FbdrQ8Weo!2`?67!lExo0eT?qQt*#zSs)T`d0GEKis)^J{Svc6)if@O>{g0ZO! zX=-a4(^&zU&`1!9T+eB>KP|v7H|nWVvwa+!hDy`kU9@iP8?&22bp0ES+pcQ$wKpPq zL2P%8MQpdb-Q^s=g>>bGKyAxUt_9-R(kM@uJiAxyh7WMJvAPxvJi*i@1okQ`uf)JH zC^w*|V5HO6i{NJCl&gc1f#B*dhTcI8+wu@5O#9%7)R4_y?p!)>Sd5n>?N45l1t!dj zB#-ISr+FBkF_~UA94kTMDlNx(-T?qk-&J5yyDJrBN zq+B>1Zbo$c{k@k1_IGm@WKUcV!ud7zQ`UAekkLMVld$S5W zJBxe1u>c(lCY)q{(!}e&6VkH`Hz())PjInF$-#j>f8t_kzR|A#gTAePx)d;IlQs>f zZzD`TFaH#qTxi@j)O1<=lrXGHdB5Tdi$ONmA}I;*(qena;dm2)SK}^HSy*&&;b0zhK$Y-x`P800+aHu4YZQx=+I26zguEdeX+K0{|&+wORtNO%1`YnrA87nt3gWB6=Oss#P3{! zA8+ne5=0Y%KXLnf1+dkBkh8v&aFmYqf0|3k=6QL^mxhW%2d?C?x!s9Nzk2M^M>MUV z$!13THR~cetU!2A&~*ltZ{4HCdGm^&Pv+O@Y*E}rk~GI~y>jeJEU^29(~{Y@Ph34G zQH~6+S;}fYiWk_tId2QCT9+CGPD`;Jh*J8t*Z56##M4K}kum*N^SK)AIaZO6;DY6A zeT)z@AHtAnmB4qRWV7$V74dg#!P?PYw=jdQaG8T3O~oa}s?kHY8?y1I-&}Q_(ftwp zR|yk?e@N`35OTIe@|eWe!BJDI0e$}h)53|?TpOKf#I&oi%{@WfimWjv6mYc^ntFL` zD8tSqUep3C+TBCVLo7va#yrHf?V3xHTs3=8O5}>rjf(FXLbexg=H^iF z5|fogiI!WpKYLK2*3CQu-&P?mqi(^=+8%hR5d^KM2%jV*3-6d#;deofQtnYFDUA~T zVr{Kg|B1DQ^ozAMv)h)9D#^dAlivh#4wfkK&^|L{eR_(Q7HU?#RaEC?wqlP>hqxwI z;c%l)2x4C`r^daXV3?$F8HSXy{wj=UFpa7EC&~ERNBvKi0Sv)PaubU4h;#T`{=oo= z^$F2$%)M+Cf@;0jc<74`#S$f62_F~VxPKg2wykf#SnY@1mb=T%2#~V47B@W%f_cBm zH#*c_TN7~7(-At8T%r3H7#CZ@vhOb#7sBTY3@es0uhzolAS={w1$9k0s}h4lhW)Ij zzLq{fYXeK)FbwoSu9hyH=5dUS6`ye3#nA2xtE;w6hxwTh{`mYsT-MnHc53UEW}#MY zm#tmv6P(Oj3KQH-ns-e{&a8a;?DZA#VBj&K3Wvy}g+|P(M*RWg`tf%_t}6NYpqG5u zJc`}k)rw0rqkw+-)jk{6NjmbfXSu5_((n4^*X!3j)#cknjml7ap4?WaFnbP}G$uDlrqsjH!zrIC+xb1{G%xk zT}xn96w@8Nsqh~Tmt6MXQL2;<*uVeq-_<1l)p7Z6bX-=L0cclE{O`~%cT(V$mK@JI z3&dp`IWp*79N-^;i(0FD-fM6>qEZGTQ`CKVzz0=Zw04eVw9uAtL=YB?3*sUZDXBf< zspW=a3F?8Q-my*On5rS3ax$%1t??tkDz#rAE_kiPFD%lC%@r~3=6(*1NjT4OSdI>? zdt5bc;M>=R9$jIB7O6_2GU+G>OoGPFLvM?j`n{fT^-vBR^9wN6}S-I*v;h>3$0{&7^i-0jMI z4o`qEz~A#{*r($cV1x8@qgRN>ChL*!ZcFjX&z&fMrS1`fk#Cf~&NqCKmZiKT5tIA4 zdQ~W|RAPr&%E3Ca4Jbgc;3Cbi)&PhYM@e3ypI;T%sBq>dFAtGGny*uAJK!elNL0Cj%%8fF(9U2F7RxW9e^V}pn5P*OtvlyBr}bSwb1P{_ zcR5?Ec$|wTzQ5;%j>Y4qT^-M|48;+xooc?PO0}jG(yI0!2le*jbatCU*^R~@01qj& zqZKM~ZtO(@0H1U`o7wi=qx@l4Yfr0P&&X{@Smg*v0)xxRf23o*SL*P$`{_WdB_Q8? za>iN5vpi@b#e34Vp2Y3JuQq?hQcty}ASoqnsL{j9l$62gfK{3nm(!f!FD076N`Z;) zd#R+uv+9A0P7ql(*nkIfm<9hF)`sD@Qs2d@ou4I@Em92oC2_L9_ROGt$6jYN>TsB4 zhw#{|e73IAfXkuJFZ^b=r#ezW%5M^HPId9Z@N|SFhf?O@eB~h}(LL@qa9KtaSQi98 zC16h@b^oEz0{eyUMT{!1bKyfpk<*O)(o$usRCU$K(0P;7`mvdiLPw^HQ5pTkRo8(< zMY1sfkA%R5R&r6K;d|s&G_T{!CwjiyTZcjX%)hLYS@LLwg@CjyU5AW-G~_cjHk<7Q zZwUp45Dj4!tzKAXNEIuW13iF4seUNYe(_lgp`9peIkpRyuv8Cph*cr4yI`fFTA`cg zMUm!BNrZX~d<*Y`gUwM47x$5lELzHL)_kic8PotA5Jy(cWa-6pit3DpdjjEU*~Q_!|0BqWgj1JcKL3S-V%kE1}c(y2-< zK}xpG+12Fg+uFk;GAo{p$}gYtS;r+U#AbPO_*D|;6y46Ozy#c_aS@{W_bU`EDyG%A z&k9vbwUTOZUoDv_RcvZBc?%D)XVhg|QAV}hE_2jN7e;o~aN~JeNXB3G3{A#L`Tn@F z(Q-UXM(ecaGiH6-;UPk518_3D&;SbErsK_5^aW@XEvYXm4i4n7tcVOULw5JF#J(Te zM>I4&9^k8(@t$m+B*IrdEl~AI-jaUjU>^HBd)Up3YG;?_p6R~&shNU>ahbJqeOu7P zh_`WT+2BvtPC=7(l`fHXfq0Nr)$Pr>CsBoq47X3UBh%f%=Kj#gv_DTt?$wDL((Bs9 z2d`vfEO9QZ?(0q98n0|0wS`GV)2pbU`jY`)OKjU}q4=TrT4zzy@ka~xDDblei!+4n zkJ~FPXXM(_gN=eN-jQ|M5H*SiOoyaaS{T+fCGvfB2CD5?=ObU=EycX>B^Aykf%v5< zid>Df6t{R|++RPR>>KRSy3rvH;DD@eanTQApB^t=ca!%x#zZ_WavZKrNeGbKK33Z% zv0qO{>$d+)h|8d4%!Vte1J$%_UK~CHXg9P#yFNzPS^De*wjSl1j|78W4!jmTOQM^E zlIYG4Jv_`EBnVpNQK+V?8zhck>yR)2Nh`YRu;b~kZS+aEesvjjO1q75Cek9bJNRM7 zJE;>Ex%bq@a!^sx+kbGtD|G8g{L)n8o6)xcBUQ-u4cVH_qu!pAJ?XQ?#-MV-MLK^> zf)9P`C=oiB7N7SBiTTQxomZDKQj8FD~~^TD!>=r0q-~i*Mg0=S|MsA9W9Q9Nd0l zeZIE-1@&PDrsrI}w24M&+L{$(h~s5L)Bci<-j2yYBH*;0uvLG^wOj+ZN(RF*a6o z0`2EsUZmOHbF;Ii#IHiZ`qQ57%^kU&0XO18-H131cMd(!b?vg8CY!vbH zRQiN@f<%87eaE6vI!Ro{kw?bUsK(##y~*%b3R!0N^>pXQO~%y-kxG@5*x1c8B=h*ttMe|YH1-Q z)OnePhC}hmhp@^7a*2mOmb}@!Abfke*_|3@wPayq)Vb2H8f7h1_w=jY3o&zXd=g7e zqjs$W9BeJ&0MEvYX(KT(NOCd5l&Os?yKFeU@;c0$WsxNa+Swpmv$3@)E(l(EoB?G(U+rD!9`*rF~E3jNWQTBv(Xwk#bLBDsd$~3C}r+J z(&E}%)EC65n+uo7dK1T0{Z8z(D4GT*-OBSYSRjyUtiJ4$E|Hx&~-cjWo=bi7y{lze+ME0f`gSoCkXg{@uiSc!NC zL6rnu<2W^8i+{}71Zq=F*w+XnFbqjhxh!@0#JQ+V$O?DHn*e|83xNILq5@6qv-mMq zo(Ii%o}qYr$*N~W@H_XPiI*3yJmnGA1`j3;^|moNbF?D9&>z>@9ZsQK$JvSgtg9-W zF#_Xlv1QAitP4D)6x0WIY83`{IlgmHQelU^Yt}VVhQ)-)1AAMKZYR_CS`IH_e4_Qg z+Nu*cmTB=8?YX8*v-GK|-UE9ER2+%x)B3Jk^`>Ghw;OTEk5DFu)G&uJ-#-{|z|@Uu zz1zRR1lnRlh!uNXA#&~4z62Eq@13QRM>rcpuJk;RZ{ z$$eXYJDT`07nsFSd3K!|S~vQI4|l0+|2_|zun4cn7drcK@T5yCIBabAU3pwettW=QJy3Qy+84(o6G zC`~0x#8YhBR4c&(#sx{&OA5Mn`zc(~bpn~81K#T_!2-&0ioN>1!NVK^4V#<|bp%JS zAAn>_t!dU&`!H}6D=R$VNGNSR@ymF4RU9}A`%n^~c?r~hcsb-dA@T_pNP z=}IE~^`AM<1OKY59eezDJ1}dkzqhvHM!T=w1^$tt{7n+zBLCeWEEEajFTwnu`ZZ`Z zHSVy&>40zFS}AF1Y4Is2ek5JS=I6^~2)JSl4<}DNIgAK@8dO-wASDy43hWRK0FTrE z(O`C7pAU$(Vc&{f8jA(o>@s;dN@gjeBT7qIygVVIEwClgn%df;yd?r+;!r&&gTO0n zVrpT(6y5uNyHc$mg4#&>+YxXlNLcf4k{k6SBO{|YF(;NTt8D+!nHlY9N-mkwU5ms=Kt93FexwW0T?>efw9cy7#ai{uNal?k$zq(et6^ zW4dw-L`<@f%B2cRfVz6nR+RGU$3^<1p}JQs)P|nEm)&ppeC`*Go3WN|=Wa!L;#QvY zyR6eIdwJE?`?lSAvGV+r>LJ*rB)d|%Mz<5M2T)cQ`K>_W2km^_CkTDcy+nm_?~ zn3B&B40sjEZC-FPnD}PWM+=aY;@Vq3L%mQVDzCS`anl-` zw32B25f9|wy(>yGAd;)l6k?lSCF#g`D13J^!!px`r>mouv+FGhY0YR=0#6H&`%VJS zWzM%Q1PaKt*EcX@l@q0L)UjQJ)Mz>wfw){D%MjGaebta(noHhmr{|p0iW~K*cV#TG zsISHB)j_rxX|3YE*Ug)d;+>XLmaXH>1imAv^27JbL%q7nAY*ZAC0@<7p}g_J)^{K4 zixIJ&%B{IyJc}W}2Yl(5x?2ejm+#bWoa?TB%%yF;lCS&5%t-o{p*!|dNrk8Dm1QDT z=`M>e--cPa%7F3yKq zkHk@t80K5&i=b8YUQs?4FJEd2_2eiV#ta^RFj}+&s5Pbl1X6jCTER-?WSm_G0xAvq z+0(MM_z*7C)HL>MA*f8{2-)# z`)I5Ibl`cM3FVU3iTH9_^O zZZy%_Mr9R?_g|>KVCnBP8_dK@y46wG^ss-j75Nia^a@wjqQiDQ37Pb2K7llsI4#1s zhV5}_`*G)P9z;$$)*h)3BgP)di}6zV39e4!#&S1Y^~0;v%F1_>FdMB-FdYqz(FQ08 z6nI@E-WE6MxvJ(}V+gN(`4c(|>t6-Vj%j56Jf7*BWj zxOtp^-E-qw;(xd0Rt9o7CAqvj3&VPZ(_!!+s&YAP{xKijBaU1%=f&@h0R3x_Xp%w`pwS0e7# zf^#P4ynu;{C^pMm1!+;Ubf4YCQ!j}fM69PnAx<})Dua2ijq0U96*e_SNszF6PuFXoz zu$xg^Z#ZT#+p3jN@sUZMYa`sH;-EkOa|(wKhGk6l$H!wx6-nGX^4g!g_;RGpj7_^< zFh?tP505)aNWDS(G})BGF=fzkF!r0`Qxc7aBkRjWLS`b^G}Jb}x>Q->7j7Rno;6Q$ zYl|J!fxoZ3uHPM|$?Czm8qJz}udlPL@Ab7RKcKIF^Z&EHrY5)Bv2Ek^-dCbb?`}6c z_5Cp}hp{J`!aSrK_2PK^U~4q*u3#;J-l81An>f=PySW6Xr;<+7HJ8{QEqrcz*Em)7 zrMSEe^UhE!-L*=W4W|dV>p9w>7lx|7>7|f8K)EWZXmYp4wJiBm$!cv*S^emjk@<SIf3s7O~urZ6@|wId>Ab8fvaQ-&+Q zY(?B{b;Gi(AXYtaxS49Q?V6^`X$<+3xf$ZI%g+#x#@B|^XXh19L6tU1Sbex8LX_k0zlq$J}Y1=lUNCziJ~hu)cA5Y)izl?swNbyFoSpU6dt&3;O$( zjNOM!L7Z609iIb0;r*`@ghlb={f$5d`hbYf%pN{h=%2)(9)wm7D3v?3EeO};oD00+ z#*8a|&iM}3p^39<{$9@mMG~AnupG`_SBRJQ_uO;Bv-SAv5n55PY@nN6; zp{!4N$;Kr%X@*^qoX1l`EeAhIR$|-o;R#4^gP2mmg7=CcpfrAMP8W%CZYPV}ac+ao zJL|4WE3WTdp?@>kCogS_{9RR_86?u16Tz-vx^TeShf(*>7}TeOE(q>B5CLJ z_!lmooi`$@avb`s8Y`+hKL+C}?c|$udqy7K^*;25u0sLcLp!MVhm~AJ#Po0B0j6sd z!f|^h40q}GiI#j{xu|_bhKulWo}xRR_zxSZ?YG= zhvnXQ8(VmG9q`g==5`0JgI|$;VB>3t2LGPS6tO!GeKt(Ek6=SRpi~k`(bX&87?>uK zms%2Wyosx%=a>?F7cHG3As5e~M)u^>s!3vyJy`~nAFnlePlc~Q%-Vu0{v|o`HFts> zMY6!e;CQKz@$f_?>_P?*X1y7v&qD&D4DFe!dNnD_TalNguH)(dsCz8mV^Od6i|QAt zV#<#$oE-bg5MRoijm0JhE8%4&{&mxnpOT8r95eF!G3u&YyvrlPtqV`)+uL$h8}5f% zvHTu?2ol>&ki255M__n&X0g5x2_(4?3xiNx@;u7s+Bk^AdKM&ox~_MdHP!UnZ}oqn?A4fS zoRog3#q8ay`!7<4c%G^toW}R8s4i4Libhj1WkP*T6B>0dx}d-NYEpklEjQ2gL&c1* zF&fGR7m}MH^S@4ugPbw|@)Q9K0WvQE(v!s#Eou$VaG2zM>Dl{WPteP7(rsxSU*)nO zRsQHGCeC!{hsB(NNHx8FRCy1}&y2Uz0Gn+u_L-K>4vgpw3A3{ibr~3S?(DIFikKaA zPok3(OXI$%dGn3EU`1W z@H%TK!>$GJz8sjQ%~fYlq)5=ln$5~Nw=yY&_&)PLT_Y+Ba0G4u!|~w#*&}AcA1@G+ z7m2jnY3+EYtEy_o?KWvT939rG(M~j9lTgFS#q5P0GexNeEv=Tx`ymqp(=|4NF{)%O z3h3GwzQP(!aoxsxm_+%zeVXv>=z=WXm39M#un_B~P!x{x$1_;B@aZH0Np z1LYvFIwjQ4*B2KV5RguRhata(##JlNnfd5K@m5tCg+?-D6*dX-Lp76jf(%CZSkH!V zv2sa0CmN8oX1QsGK-p6mYyWi8L#YvlqdS1{|KaL5_x)(g1CK#Y72=mM(q3=keUd9L zEk?E2?@X^{?RF=9{Ui+*S5e zIWM-p@cF#^G%Oi|^ToK7H_!#0S4T0IadgxYR^gLFDdq;}ap zG9TA_mi4*RP+uEj58jyBHWV6VD`{ej9AX(QE#$mVt6!Ohd^nQW}AnyV4q{6)9gR$Tm=epq@ih_s>KHL39y zKn50hYweg%_gF&A)ZQ&=X;HoR^|J?K?23kes>6+{#WWG1q^I60grF_nXoy4Q99wqu zn6(OyYUsvm><>qKE=6`l1xJNpZSb_RV19a`5MRu#KX;Ar*YBzQ1%jf!=d-kkodV3G zouIg}x!r|ve*=6<%Gk!~(awd&Xb(WVo5(Qbq#;4RQfKK{W`OOeq<-We{d_Ew; zMX+ZDHWy<#{qPLf?NNGoc-Y$BUdqZUOm|hJqvQEg9$P{hnhYv^1*s+a@r>WoQHT)t z#413?N)iK(K~709MMy&Mf=+s>uB4PyC?IXEV#V+icv45qPLX(s&XRR-i2>8#gy7yO z_>uRWw$n1cYIle4DYFtFh4E5$fun#QUMieF2hNNphw1OeUjIe=ArK*|&l{cnzzd~beDP30%~C~Ip!bp*R3Z?b6z9vzw3 zGX9a^KsAiv3sl5Sn?KcooY9_I2gu)F1m05nINSe%)YQz3!)NGeZI3Gn8QD7(l^_Av z&E@Q5mfo34z#h0C?8!@J7A5%{xcHJR3AiA)F&B08 zEb`2_9|_M1Hc!sM``5@s{rF{KDRydU>bK-=fOQ{m(LuMoN1)}7F!sZq^cJ#PKEng4 z71`QL6&3U>Hqi(YkL-4?`QoEsuf_cp657RW33)5*G@-Py$??1-l+4Ag17} z+7hB2z!U^Jo^Ln02yRn9 zs+tB~kZG;S+GUbv7BZlLrr9 zO;(k>elTUbWubRV^F|Fh&xo=a{RSq%WGAOC0^EY8C%0@ze4Z_seT=NM@i%)I3!jhO zSuPQARAn7SYCOfkc5{MF&MkFB^t<~j-uFQi~I(3P>4S21%Q*PnNhH3>$ zon|FefDJMo1^*D^J=#ok>*?m6`>hexq$3E}YLUMu21{bS!gwfE6lGCFgx|ALa?&jp z=R{244!v2eT_*WV#G>@VkJdul5UN4 zi<>;hwi@VlNQF1xE;~Uiq7n3IKktq1r?B26REv4f8`;M@K`BG~GcQJnK9c*LkjD-L zPxi5(a-P)Fa>=l86G&JZ1?mK?g-y!0eTk%)MT*BIn?*7{1j>oVzMi%LyN=&YSjt#sgX3>~g{TbH0q&tpKU6v?1u1jw z7iF38FLt}4dSsvGN1nUpb~UXKOcIOKY-!Q-DfFyPXfrDibZF^3GNeEe*d9CXUj@nk zzZn9tLDaw;WF7!nbE>l#v;$K5-}y~`%N>Wsc_Vbu2mhvs z0mWqG3~%w0#2K5p1_x$;V6ict#HgGzzevQ+xhrOoA)>jhbfkKxrG>HauF zsa*Z2;kCuo{BiOGGjJ(5Zv}fH_G>*`38zEj4Oc+q+<8ilPi_Z_Riiy0es=ja2O#!< zzP6G4x5mdfKXmzt;v!GH=G=s`Elz(7tR zZn1EXkZEl!TZsJu?H4y!^HFmOk(I?REWOY&WJXa<4K;mS(Fm;9gxfS+dMdP1HvO3h08WJA5;YJ(c_H2+TCEuHNTGQzg9 zMaKC1PODBg56(Hw!X<#}G2%US#`? zFlxv>|LbHh)*Db6wiHR(XNe@N_J`fPSwrI+H7V&wV6+av#YHT2_hyi9C{8n^>3mw>Om8STn8VZLDQe_4y;Cn?CvLwy5zN z=h`oQ!x#H~Jx^yMr?#laD2z)&`@|P9^*F*m_q?N09km&yM#{uA6?l9+sLU zx^d%uR)!;AIqvuDrSpPVGHmLj12Bo=a4r9F59i_SDWOp(@R z=5^ri^K=S`#WI)r_j+CYA9_8Qp9QzSunepHca7hBOo+mEf0l_s@khq^8cKe>pkU!~ zIF2h+jdIdw`lc)jc+Y|CY!2a z`~--%t7Kis<(P9Ac|xKke4<4nDyM=>nOAXCgQHV_$Hx=KS&yS&=XW&5o-X_9e1F+r zMcVf%2FX87?q%$t-_^#BCb-3NcgEK@*PyiAOsN342d#WFX?v5r1z~-VOa-cw^%>6J zKggdOw&1b4B7}u+_H;O73f{d`5YUcw7K!@toX2io%9Bi0bvJl zfdUvtWBKWHHa&#wFE##%=mRdG#)C@!sPUdZYMf_!ZjySsu2rF6tW}^=iKj}I2dPHK zY5n{?{dsRZ_7*2KtRoHBaoEOuhVLY$&Y75$>@~VyQJ(ylCagJiQ`t7d!OkjR= zJ-lD{5OK7;qMH_%apJmA;XLOvn&Rv1jvOPc5+cK*%0E=}BxLA-W5ASs6g-Y|(x1sW z??p%5Y!9_sFOiW=vqLo_DdTEl%X+_}4_LI@d$SQV$DIr!JsetxZ$ay*6Pl4`IwoWb z&}}_Z;ISzQG{S%{J-Y6d`LLWn^JX8}uvu<&KJinPkNR}2Z3w75lkD5lWE;{k~YaY|U337r-h)e$_sp?ZEa`Wk-}4mGas5G8`;VR9DZUyII`g;UcBY zCBRXJ?zB3;XT0>}HR%3qR?Vvo`^J{t#)b(=-&%Qy$td%sS6}X45}aTLkX*)5iu6Et zM7Vmw){3IFg<++s+OQa}c^4<)EHImduLzTEgHQ4)N;jyA52SGUwDbe!#}XdYqHN^P zk={tADuza{qHWUN3UR@`GF8?(qb8n)wJx&~rU#P zb8iKMLjwzX^ZD9g5<8hTMcQJYWBEoqaW%&yFYfk%Pl$m5ARMv|z0g ze^PE8x`CYUl~{NWR1Z0)mX>0%ad8Vpw4lJso4y|UBt39CHicO@et-E&T-EYQuS~Ec`K;PWmnSdrx-U5F*glAXf9r)$jlOK~9Hf8N}B{tj}SF?M{ zN@lPA1mVi9KoFi<@SQNIv|IROeuG(b3W64H_aiS`I~MmB#`GLc7xBMP&$32DdDEZ2Q@C*2 zeshOXH7jcu6AE|3&1$H*B2x)XZ!Ljn>L<(wt}Or znDIKJ<4c|a#5V-U`MmYuj+%7foBkX{?ylXB$q4L2YE(2YL&aq7ylA+Uabhz^9wLNKXU zE^jXSK-W9Sem=`)HFbh8HzTbNVPR$m=cnwR2j^J0xEk_*8u29m>mWJ!?nm-ofkjq@ z8KA`q8yiVuVq&)U_TI_2(DU=7<;ujomillS5_Ny5^?Qzgy(qIiZ4PvEiy6gNE2}3w0qNh z(FnEkQm^+Cgp{qWkyt~%M<+s76$r1-#XD((&yp+KHVtlJH{RNa3odQgh4S%2b0d&X zVa{FW*U1o4%}4yK63fXyej!@U(piqz@*Ug@eRZ1f96qL~pdB16SG!mIF1U8idzQEj zi(Q?4J-OGh1MdH8Anl1p9F74`HY)H%)qs;+rVA~ht`jEX_xXFE9`s)}5#J(u@urt2 zipVrNcpRQB@*B=a5}Z3|Ckj7`%U6)ze5M8_TTM;@ z)Jks|?+W+S16kJD{z#OeJAX_PPTP+RhqGDCYc z#mdkTa7uLqWO@ za=E6pX9J<;cFL~78zJ4EWut@^FEvL7f8wf~9z|H=+*Y39@%yyubEA!f%lzaWdwfaG zT5HsWe7qz^nFx(7Wbr9Rc{wkiQ1b#Wjs^>U`zf45o*Cm+O2KU(ibu z^f1iVon$Seb*<@whgy-UQF`%8k^`8C1UAJrd68yrAcI$<_oj&zU{T<`6LV*Tab6+q+07s$9h67t;KW|_%;ULy`C1367dT!~)T$avFGEP$v#fj@m4+(sLPk>KK9AQWQ zB0}&u=NLb<$n!(V79%AfqsUwY~5Rx$QM?P+TRhJM|3Rp*b z+pc!eC4}gWJjb2ri*WI&iKlw~9FGU$Zz&$*j}fiFMBtWsbuFR0yRRII2Qevc%XD`$ zA^|{shy2SWbPM3sr#?P8KAmk-Uu!g=Kf1ZIsuf0{PLdo~KhwCZ_}vK5>e?{#@wY=y zMNq4IMqh_pBWcU0oxNm!+d@8;!@VAe|6KQo|@(bO24ha&{HU@IBbt)iN>RW zu*k)gai{OGSY+f4)E%H1rwY=yG04&|YtrP646Dw0t17ihD@{JH?R_ni|AcSlMjGQ% z{Onw+Sr-zSR7MLiOQ>?~Gs*2b%OWh5)#jc0JsIF|(wZsE8x_>M3DYikj637cuJZ>h zFId?cowfV1>%CEJRim6+^J-DlcPClLsW)$exi=eClDBt%_R9OF+Qc6y)1U;Ln#cdm z)Nl>eFB?RAxm1F5>jkCxs4CPwvMT4;fBk&wvq%$Xy{MTYFXt0p>M}kj?`rG!_8qT6 zj3uz2RMk<_LiDv9Wv9-~sjC>lMfDxIx#$y`H%x5A$VCd099Zw}quDITD*

OO{@B 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 I_{!)10Z7Hh{Qv*} literal 0 HcmV?d00001 From ebacc4fe12e81bde5d2247efd2f072e9dd11a61b Mon Sep 17 00:00:00 2001 From: malik masis Date: Mon, 16 May 2022 17:02:33 +0300 Subject: [PATCH 2/9] Updated the doc --- .../POST.md | 47 +++++++++++++------ 1 file changed, 32 insertions(+), 15 deletions(-) diff --git a/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md b/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md index f3926c1490..20c832a85d 100644 --- a/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md +++ b/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md @@ -1,5 +1,5 @@ # Consuming REST APIs from a .NET Client Using ABP's Client Proxy System -In this article, we will show how to consume rest api by using static client proxy by creating a new project and converting that from dynamic client proxy to static client proxy. Also, I will glance at the differences between static and dynamic generic proxies. +In this article, we will show how to consume Rest API by creating a new project and converting that from the dynamic client proxy to the static client proxy. Also, I will glance at the differences and similarities between static and dynamic generic proxies. Article flow * Create a new ABP application with ABP CLI @@ -20,7 +20,7 @@ abp new Acme.BookStore -t app > If you haven't installed it yet, you should install the [ABP CLI](https://docs.abp.io/en/abp/latest/CLI). -At the same folder build the project with the following command on the cli. +In the same folder build the project with the following command on the cli. ````shell dotnet build /graphbuild ```` @@ -35,9 +35,8 @@ Now your project is ready you can run it properly. From now on, we will add some files to show the case to you. - ### Create application service interface -You should open your web application then find `Pages` folder and a create new folder named `Books`. +You should open your web application then find `Pages` folder and create a new folder under it named `Books`. You should create a new razor page and a new js file as named index. Change the Pages/Books/Index.cshtml as the following: @@ -62,7 +61,7 @@ Change the Pages/Books/Index.cshtml as the following: ``` -Now change index.js file as the following content +Now change index.js file as the following content, as weel. ```js $(function () { var l = abp.localization.getResource('BookStore'); @@ -97,15 +96,15 @@ $(function () { Assume that we have an `IBookAppService` interface: ````csharp -using System.Collections.Generic; using System.Threading.Tasks; +using Volo.Abp.Application.Dtos; using Volo.Abp.Application.Services; namespace Acme.BookStore.Books { public interface IBookAppService : IApplicationService { - Task> GetListAsync(); + Task> GetListAsync(PagedAndSortedResultRequestDto input); } } ```` @@ -132,6 +131,13 @@ namespace Acme.BookStore.Books ``` ```csharp +using Acme.BookStore.Permissions; +using Microsoft.AspNetCore.Authorization; +using System.Collections.Generic; +using System.Threading.Tasks; +using Volo.Abp.Application.Dtos; +using Volo.Abp.Application.Services; + namespace Acme.BookStore.Books { public class BookAppService : ApplicationService, IBookAppService @@ -158,7 +164,9 @@ It simply returns a list of books. You probably want to get the books from a dat Add a new test class, named BookAppService_Tests in the Application.Tests ```csharp +using Shouldly; using System.Threading.Tasks; +using Volo.Abp.Application.Dtos; using Xunit; namespace Acme.BookStore.Books @@ -175,15 +183,17 @@ namespace Acme.BookStore.Books [Fact] public async Task Should_Get_List_Of_Books() { - var result = await _bookAppService.GetListAsync(); - Assert.Equal(3, result.Count); + var result = await _bookAppService.GetListAsync(new PagedAndSortedResultRequestDto()); + + result.TotalCount.ShouldBeGreaterThan(0); + result.Items.ShouldContain(b => b.Name == "Mother"); } } } ``` ### Convert application to use static client proxies -Before showing you how to use static client proxies instead of dynamic client proxy, I ask for talk differences between both approach. Their similarty, advantages and disadvantages to each other. +Before showing you how to use static client proxies instead of dynamic client proxies, I ask you to talk differences between both approaches. Their similarities, advantages and disadvantages to each other. ##### Benefits * Maps C# method calls to remote server HTTP calls by considering the HTTP method, route, query string parameters, request payload and other details. @@ -194,9 +204,10 @@ Before showing you how to use static client proxies instead of dynamic client pr * Properly handles the error messages sent by the server and throws proper exceptions. ##### Differences -Static generic proxies provide better performance because it doesn't need to run on runtime, but you should **re-generate** once changing API endpoint definition. Dynamic generic proxies don't need **re-generate** again because working on the runtime can take more a bit of time. +Static generic proxies provide better performance because it doesn't need to run on runtime, but you should **re-generate** once changing API endpoint definition. Dynamic generic proxies don't need **re-generate** again because it works on the runtime but it happens more a bit time. -First, add Volo.Abp.Http.Client NuGet package to your client project: +Now focus on how to do it, +Firstly add Volo.Abp.Http.Client NuGet package to your client project: ````shell Install-Package Volo.Abp.Http.Client ```` @@ -236,7 +247,7 @@ Also, you should then run the below command under your web project for the UI si abp generate-proxy -t js -u http://localhost:44397/ ```` -You have been should the generated files under the runned folder. +You should have seen the generated files under the selected folder. ### Add authorization ABP Framework provides an authorization system based on the ASP.NET Core's authorization infrastructure. @@ -244,6 +255,8 @@ Even so, to use that need to make some configurations. Under `Acme.BookStore.Application.Contracts` open `BookStorePermissions` and paste the below code ```csharp +namespace Acme.BookStore.Permissions; + public static class BookStorePermissions { public const string GroupName = "BookStore"; @@ -255,8 +268,12 @@ public static class BookStorePermissions } ``` -Also need to change `BookStorePermissionDefinitionProvider` under the same folder and project as following. +Also need to change `BookStorePermissionDefinitionProvider` under the same folder and project as follows. ```csharp +using Acme.BookStore.Localization; +using Volo.Abp.Authorization.Permissions; +using Volo.Abp.Localization; + public class BookStorePermissionDefinitionProvider : PermissionDefinitionProvider { public override void Define(IPermissionDefinitionContext context) @@ -275,7 +292,7 @@ And now you should add [Authorize(BookStorePermissions.Books.Default)] to `BookA If you don't give permission you should see the following screen. ![access denied](./access_denied.png) -After completing that you can make localization configuration and you should give permission from the Admin UI side. Now you should the following screen. +After completing that you can make the localization configuration and you should give permission at the Admin UI side. Now you should the following screen. ![list page](./list.png) ### Further Reading From 4ca39530d4fdbf8a7605502f8aed0e5181f74c85 Mon Sep 17 00:00:00 2001 From: malik masis Date: Tue, 17 May 2022 13:45:33 +0300 Subject: [PATCH 3/9] Updated the doc after feedback --- .../POST.md | 154 ++++++------------ .../access_denied.png | Bin 16960 -> 0 bytes .../list.png | Bin 47075 -> 0 bytes .../static-proxy.png | Bin 0 -> 19010 bytes .../structure.png | Bin 116710 -> 0 bytes 5 files changed, 46 insertions(+), 108 deletions(-) delete mode 100644 docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/access_denied.png delete mode 100644 docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/list.png create mode 100644 docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/static-proxy.png delete mode 100644 docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/structure.png diff --git a/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md b/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md index 20c832a85d..3ed95d0fdc 100644 --- a/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md +++ b/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md @@ -20,80 +20,14 @@ abp new Acme.BookStore -t app > If you haven't installed it yet, you should install the [ABP CLI](https://docs.abp.io/en/abp/latest/CLI). -In the same folder build the project with the following command on the cli. -````shell -dotnet build /graphbuild -```` - -It will restore the project and download the NuGet packages. - -Now you should run the DbMigrator project to up your database. - -Now your project is ready you can run it properly. +After restoring the project will download the NuGet packages. -![structure-of-the-project](./structure.png) +Now you should run the DbMigrator project to up your database and your project is ready for running. From now on, we will add some files to show the case to you. ### Create application service interface -You should open your web application then find `Pages` folder and create a new folder under it named `Books`. -You should create a new razor page and a new js file as named index. - -Change the Pages/Books/Index.cshtml as the following: -```csharp -@page -@using Acme.BookStore.Localization -@using Acme.BookStore.Web.Pages.Books -@using Microsoft.Extensions.Localization -@model IndexModel -@inject IStringLocalizer L -@section scripts -{ - -} - - -

@L["Books"]

- - - - - -``` - -Now change index.js file as the following content, as weel. -```js -$(function () { - var l = abp.localization.getResource('BookStore'); - $('#BooksTable').DataTable( - abp.libs.datatables.normalizeConfiguration({ - serverSide: true, - paging: true, - order: [[1, "asc"]], - searching: false, - scrollX: true, - ajax: abp.libs.datatables.createAjax(acme.bookStore.books.book.getList), - columnDefs: [ - { - title: l('Name'), - data: "name" - }, - { - title: l('AuthorName'), - data: "authorName" - }, - { - title: l('Price'), - data: "price" - } - ] - }) - ); -}); -``` - -# Implement the application service -Assume that we have an `IBookAppService` interface: +Define an interface for the application service. Create an `IBookAppService` interface in the `Books` folder (namespace) of the `Acme.BookStore.Application.Contracts` project: ````csharp using System.Threading.Tasks; @@ -109,7 +43,7 @@ namespace Acme.BookStore.Books } ```` -That uses a `BookDto` defined as shown: +Create a `Books` folder (namespace) in the `Acme.BookStore.Application.Contracts` project and add a `BookDto` class inside it: ```csharp using System; @@ -130,6 +64,9 @@ namespace Acme.BookStore.Books } ``` +# Implement the application service +It is time to implement the `IBookAppService` interface. Create a new class, named `BookAppService` in the `Books` namespace (folder) of the `Acme.BookStore.Application` project: + ```csharp using Acme.BookStore.Permissions; using Microsoft.AspNetCore.Authorization; @@ -161,37 +98,38 @@ namespace Acme.BookStore.Books It simply returns a list of books. You probably want to get the books from a database, but it doesn't matter for this article. To do it you can visit [here] (https://docs.abp.io/en/abp/latest/Tutorials/Part-1?UI=MVC&DB=EF) ### Consume the app service from the console application -Add a new test class, named BookAppService_Tests in the Application.Tests +Change `ClientDemoService` as shown the following in the `Acme.BookStore.HttpApi.Client.ConsoleTestApp` project under the test folder. ```csharp -using Shouldly; +using Acme.BookStore.Books; +using System; +using System.Linq; using System.Threading.Tasks; using Volo.Abp.Application.Dtos; -using Xunit; +using Volo.Abp.DependencyInjection; -namespace Acme.BookStore.Books -{ - public class BookAppService_Tests : BookStoreApplicationTestBase - { - private readonly IBookAppService _bookAppService; +namespace Acme.BookStore.HttpApi.Client.ConsoleTestApp; - public BookAppService_Tests() - { - _bookAppService = GetRequiredService(); - } +public class ClientDemoService : ITransientDependency +{ + private readonly IBookAppService _bookAppService; - [Fact] - public async Task Should_Get_List_Of_Books() - { - var result = await _bookAppService.GetListAsync(new PagedAndSortedResultRequestDto()); + public ClientDemoService(IBookAppService bookAppService ) + { + _bookAppService = bookAppService; + } - result.TotalCount.ShouldBeGreaterThan(0); - result.Items.ShouldContain(b => b.Name == "Mother"); - } + public async Task RunAsync() + { + var listOfBooks = await _bookAppService.GetListAsync(new PagedAndSortedResultRequestDto()); + Console.WriteLine($"Books: {string.Join(", ", listOfBooks.Items.Select(p => p.Name).ToList())}"); } } ``` +The output should be +> Books: Anna Karenina, Crime and Punishment, Mother + ### Convert application to use static client proxies Before showing you how to use static client proxies instead of dynamic client proxies, I ask you to talk differences between both approaches. Their similarities, advantages and disadvantages to each other. @@ -211,22 +149,21 @@ Firstly add Volo.Abp.Http.Client NuGet package to your client project: ````shell Install-Package Volo.Abp.Http.Client ```` -Then add AbpHttpClientModule dependency to your module: -```csharp -[DependsOn( - typeof(AbpHttpClientModule) - //the other dependencies - )] -public class BookStoreApplicationModule : AbpModule +> The [application startup template](https://docs.abp.io/en/abp/latest/Startup-Templates/Application) comes pre-configured for the **dynamic** client proxy generation, in the `HttpApi.Client` project. If you want to switch to the **static** client proxies, change `context.Services.AddHttpClientProxies` to `context.Services.AddStaticHttpClientProxies` in the module class of your `HttpApi.Client` project. + +```csharp +public class BookStoreHttpApiClientModule : AbpModule { + public const string RemoteServiceName = "Default"; + public override void ConfigureServices(ServiceConfigurationContext context) { //Other configurations - // Prepare for static client proxy generation context.Services.AddStaticHttpClientProxies( - typeof(BookStoreApplicationContractsModule).Assembly + typeof(BookStoreApplicationContractsModule).Assembly, + RemoteServiceName ); } } @@ -234,7 +171,6 @@ public class BookStoreApplicationModule : AbpModule `AddStaticHttpClientProxies` method gets an assembly, finds all service interfaces in the given assembly, and prepares for static client proxy generation. -> The [application startup template](https://docs.abp.io/en/abp/latest/Startup-Templates/Application) comes pre-configured for the **dynamic** client proxy generation, in the `HttpApi.Client` project. If you want to switch to the **static** client proxies, change `context.Services.AddHttpClientProxies` to `context.Services.AddStaticHttpClientProxies` in the module class of your `HttpApi.Client` project. Now you're ready to generate the client proxy code by running the following command in the root folder of your client project when your project is running. @@ -242,12 +178,11 @@ Now you're ready to generate the client proxy code by running the following comm abp generate-proxy -t csharp -u http://localhost:44397/ ```` -Also, you should then run the below command under your web project for the UI side for MVC -````bash -abp generate-proxy -t js -u http://localhost:44397/ -```` - You should have seen the generated files under the selected folder. +![files of the static proxy](./static-proxy.png) + +Now you can run your test console application and you should see the same output. +> Books: Anna Karenina, Crime and Punishment, Mother ### Add authorization ABP Framework provides an authorization system based on the ASP.NET Core's authorization infrastructure. @@ -289,11 +224,14 @@ public class BookStorePermissionDefinitionProvider : PermissionDefinitionProvide } ``` And now you should add [Authorize(BookStorePermissions.Books.Default)] to `BookAppService` -If you don't give permission you should see the following screen. -![access denied](./access_denied.png) +If you don't give permission you should see the following error on the console application. + +> Authorization failed. These requirements were not met: +PermissionRequirement: BookStore.Books +AuthenticationScheme: Identity.Application was forbidden. +Request finished HTTP/1.1 GET https://localhost:44397/api/app/book?SkipCount=0&MaxResultCount=10&api-version=1.0 - - - 403 0 - 156.9766ms -After completing that you can make the localization configuration and you should give permission at the Admin UI side. Now you should the following screen. -![list page](./list.png) +After completing that you can make the localization configuration and you should give permission at the Admin UI side. You can see the same output again and all will be alright. ### Further Reading In this small tutorial, I explained how you can create an example project and apply static client proxy instead of dynamic client proxy. Also summarized the differences between both approaches. diff --git a/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/access_denied.png b/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/access_denied.png deleted file mode 100644 index b0808c8a919fdc928152088ee9d707c2b35a99a8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16960 zcmeHuc{H2f*KbNoRngWLr9xXREk)Hlw^|fM&9hY17!mUvs;0JzwrZZKS;QE`TrI7c zkPs47jggoIG2Ha`u6M1w?tS02?jQHwb=O_*A6e%a&N**6i0D!I)05}tSo`LqHcU^dw)|~M+)Kmjh4)U(hZq7PA(tQK~R3|VW*`1@^ zGkH9<@CE?5F@Jw&u8#DQ0Dwp1T2CGs2iTJEEFs1V;gsXkNL=I24QKxR9ZpW3Dw*%D zuW_%}7+zib$TP;%i@8qF@O&35Q;C_@&U1eB^*Y4DlUbUBf7nM?OGLb_Q%nu{-r`&h z$4{H6dr}@LJV>#*PY;CCsHnkACdtIKSAy%jVKYNZe=_AIy%#fyE&XA7mEJ&5$0ge8 zX6^2}^V8amdurmeMk!&Knbr&m?9c%K9oy$=TLo+={cnE->hOqBtY8d=yR zOi&DKjO`mS+UG3M*XTT&A47MhEHf^4UZpJ~!;-mfWN7!*KE!O9B`g+rveCtsMJ`BC zF*Gttq+X%3OFBv)) z#dRg%3;=K`W#GMxByMdY@ydnPxpzuqlPI3j($c{I+RWGatPohoo{f7hQHS^&E0V2q zlGL=JkZ#~#CVclJ1TLw+`kDRFIEyg+Y;UZe#*^7;j_ljbiuy?IpaQ27A;&AUj!SLk z@-@v~4$b1P=xMiu99mI?=U0}V{blIq@kEOn8?GAKLI9)@Ba6?gEVQeCXQ}wyuulEo zKeA6Uc`!M1` z7Z3lq6Aak6r6&H`eHI(utBzX0SuadK&lj3eBF8fVa)U1g1!q|*2kP!y6ut0Y?-Rl= zg?lHQ?mDC&K5rtFC{{+};Fh68NKg$1w#ADKb{T6^C^uvwdjnn*qK2oY*5HOe4E*K# zyUohRmRaeS(qV{{zI9f{aTjbTTQ&(O^K^xL9gypPV`uLH)z7$$0F2+*;)I-b02u}) zx->cOj00J<$7jQjr|sBQ*qgr4ri~b$%GfVA*&Mq}c~l3tqr@q~9v~fH$1jp#`~7s!)Fji3|Ed|+KX>|oNWb>y9MpUFhlz#4 zV2rQ{cFoMjw~6oW&$kNO!R`tvw5AK%e=6A@ofZoKLE zYF?jdn}4KjV8PPb@@pw}F|uAfy+BKrV}-zxgo8wq4d{dFXnqCB@@i5#eKb|Dpp= z-Wr(MM`z^$e9F2!+BEdeegekT{@^Cw*C^bpW~fb7KnP?Mt6krCq)sA!?>4(eEPJzk z4avIJqRpJ< zu92QL$lx(PK7si@E|c_tAnCuyf&B$#{Mgu^i&Jf+c%WiY-s2dBp}dII-hq^jnUy$F#Wo_u99m& zE;uh(Lbl$0O|~?^`(<=CF`L+!UaB1!jfV93P+?$PYKpOgE~qRl=$3v2wXq<7e+EAG zhLN*09|?b*S$^B3Tnd&;z5mBJOPEtN_Z&yP0purAYOY#X+2(!+Y)sE7-g*Abm1Bgd zs`z8HS;gq*Pva5c)$*1G3uvaAkGWX=mFat-68#nx23PRSLUqc`yS8Y8j7Ydp!ZnGFD#V+AUF z4X0-mzJ2@0N{C7hx?#=3Z2lQkylQ>HX^_Fzek`u(vI$SkmV2!8kIr`YazA9!sM@nC zD_J2kBYy2$8_4`TZRX0p@efbvpw^)zTZ7!`-$**d0=Dh_72R~B(!;AxF2~KuF0Lm> zXX&84#jbVxMIp+m4`)gL6ua*J5jFCKX5=`%3DBxeHWQLClNrWSe03p`*DZy1yGQAC zZ7dV_y=2pC(k-U7XY2b9gKD1oLzW}2>G|w!`PfYsv+*plp3}W5^YgDf%0v>f{fbPd zurUqo8RaYN1#NPY{f%!EH5YjkY1W|2y!3bQ9d>= zb;PH_r6`k}ZV#pMoNRphF2fj8U)z3dN`QM6Z70S!ffv7@@f>O#H%oTzPMqr$FtIo& z3_45_9yc~CFLJHT78^i&P%Qe|A#I$-8uj{ay%lTCV4n`ya^ro?T0W}+Q4>c6Kg)3w z+*YiKrJ-dBlfFgw3wVg5KnW!|K&`zsfr!TQ&y7&Mz~O z-wZ`9>bt+pJWw|Lf-vC139at@p^x?1du9*rXM4Bs!=Ry*Rjlt2?rz~Giv67bQ?iP& zSG!&*&-DRIS*qDT_e6}kB{Le*CQ&Mihl^K2A)qSZP5xIBzBCd#&;(`hwlQ?sr8)WT z_M-G+`J}W%nyaZb_U3C$3YY6qmo!;GV37C?Xl_=b#oR@({~DhSFAlTLudY6UPn(y& zFC6D-TSiueEu>%H-nfdl<>Tgw=DIhQz%TsVw1QjC6fT72!|sd{2Th?RBG@`GmrDb6 zn1R3)E3>k)B0BUz-pNxpO)3W078O((l-(U|s5fxIK@S8&_OG?~f~+_!DDvsbR@2tH z`5Jw-%)759CKs7vk>4{@951iy8f48>B}CW#OhFbET5Kj+Fo>}HIR@-bsA63{HBk zOIsPz0$bP!$7IroK$C$g>`Db;c%=^=<*m4In4oVpf3szHD_0!(~(O9lIyg0fWdt#7q%UE>ht+1(v zyK2GWseS)zXBM&4;-)#YZXMol^NIb++QLe24I>~E ze7;rr*IBd~CMxX5l1p#n1ZaatPD@tLGX^M)+XyylJ#Z2G#fC|inyHX^LyrBaS2cA+M>9!6aYuN-lM#Xcc?q_YFFt+#o zEBBGivJ-#I#L?!JI7c9Y*LedR@$izwWn3lFXB%%DZEDwB+=h zIfKiZaf8VvO}K4vF-f5@5t>ytw~5SX6Y$k-Q(P-kz1-BoMEv)ic++-L;#tmAM6ME0 z1+ixaMOE*hBU_aG<(w&pWj|}p?e@kaXI8#_Z%K>J@{Y8Xyii^pBxdeKBpR9( zkmk;`Kr3r3`yOblF5MKUKFx}7b(db#X?owU77EFc)tXd~t#h}^;+eXLNK4-!{p7Cl zjp+f|d@=V1|B?&3wWS%cMxhweJuS6oh@f*0XgDXnUSqgjw7{$ zi9KrZmE4oKqdlX;k0or%<5xYAG6q>~N;c+uG-rk_uc0S%Y!7aQx5F-8agc4W$JO+; ziLdSk=ZusGhrJY9zg-;5*zTw?g<#MOvTF>2k@HgIr4@ zpO_zxWiZ>e>;e1!F;JOG?HqZVEI&rMQrJ_@d1dgZYQIA9>d?DHgE&TL@I(3P-Uk(Z zfp=PzoeKtDyY`mE@ykarE;K%_6ks8_&K00jikbV`CZkfG)K$;{mRo5oTG$YT!zO|5 z4FY8omx;*ln#QL{#bq9q5+D~=iZ@OnF|(j^bCtd!f6m#M4w}%aDe%U4b)mNYBuN^j z>gfA15qJE}aG=rgL(yRQSh)E>!S29Vrc=Xe)91`o-;!%!8L;QbEr%H?5XU-lsm0-W zS6+$3>1u9C88->*QGx@mzV>4ns~n!}Lnk@RR6t$(ktJsUtu&&?jJ3DPuYwRHqf=vt z4}$rIzM;k@(Ucke+;_Fkr8#jIB7I$*d)iOXqf?%Ka+mksG)a$_1v(@xcDs2EAa@l( ziSCv~`06*%oHIO%PI0bf5F?j7!Sb62V3FMyq2ZjGvVln@LygBDHzYB@FMClNhZRe0 zdZ28vd(_5!Rd&EIm}V+Jfy=0HOxAoWx#k2O%zUE2J~&O0(=%C3YAB$$K#dAa^<%SV zguL@oL_}@4nj#))?hx|+bb0$6TidAUTM_UG)K}ELzkp8P&+&@Fg|bpOCfTGAr6Rey zy^3+}-df#1?QXySnB7ry{BZTS6OhFZ^G7Ho;j1fbNJAPkEgjj_?xf_O1M$ESJ^%aJ z%ZC-h)`hrK2dp;NQe~iWUTsRT2#uc|bjrZJ1O1tY-VT6aE1HG+jUa5o>l*_MMD6BX z!Gk_Ol?63u)cu~tqTnOp?yqYq-zzm+o(`GdQhbib?0A5_4kt8&{`0B-J}CaJn>z$r zzvsXBns7whPR+9l*}u>j zQ#Wu__|)$I5=S|V-F%D^ftef2%@~x^1K|^uCGvOfmUb%-$IaSqjwcw95=!l~O6i@|kOEChelHmc3d|~Rj-{}G~Two)oeD(N1z`fJVn>nN6wB#;*onCOxWpTyhwI9SERhcm7HCwy}&o=Tb;_ndMeS_P(Be)4da@k$Sd_M zB7?a}LqGWo7z8e^&>wf1fzs5?h7N8UL42m0%4t&E zpKM&9ITG+Jgc&$^L6YXVl&m2*mpk8=pz}&6QKy?FVY}se9BdqSsHV#z31ZU=8 z_ZElc3;KudpOV{yaWKep+}HKxPj3TNO3nDio)1d@uzY@!9~c(L%Bxr!jpC6!%Eu^M z=WCfQIU8~x`70fC>2 zLZv6_CcCj$~{6ee} z?UGl_9MjUf^y4_gN}oHB3y==Z7;#}~S(MGpt^ENded+DYrw8&4v2Ad@c_<60dxH35 ztKF)yxky}_e6di1$VDA^(8Q+p7gCr$z>!s?L=1JxOkILRbjRx_IPKxoTSZf)efB;! zlRbp^-vf+*5FAj!=P5lStFgBBd-OqwN-=bDuChCgK;C(jWc#+oAe}*&+0KzfxRhX&ycIZN?R zAC@uM>bKWu*VeF$7uR{JqZIOS+Up~<6UNs;^=VhZ$$Wm>0S_>c)L>8L;x0pE92m;D6+sh1&bCw{B9;s%_Rt7s0m zbJw94WV#v@Ou8f6;%Eu<&noWSW-;2_3~q*mjDy8VBV?4NbmZWLJz#Fd zhfjl4XzFK#LCSZga{e)wC8RLzL%3tTtUVyJN%Z-o9%CEHT_Wm6bKKU`(7R!ZkI|aVPIXq91My)+vYEB3S#;T zC@*^%Lum~Fb@ji%#s4c%t9miGu2>t&Yn%6-q45s`m0OvPu9H*8D&%pf{PItcmIpSfk$Ow zwT7{=I`x~Wie(x53A9lz)nvTKG>{%Zc(_c`qn!=Z6D3KHCw)0V5`&ZRi9x%iCJMR6 z1NZI@Z>W%+cOEdBc+MC?D&{gdP~Wsj_c9PQkT?ZW{EAo{v~ncE!Nm3GJ8(p6bla?C z5wDChPA`!1=LPr(sX=9RG7KxIq)9@GnX^qrZEJ8}eLyX!H>0EMPXoUn_RtKx*WO6ku8U8yNW1Hn1w!Rt$Br1Kw!Qpc z{Y*<#s3LLWt-c`Kf+aFZUR%C8E0Q={F5*jB_FSiW&!pW-ht8F{;-o0rnOj?7++dx- zo~hwiS(FwynfCO!t6KrW7KT`bHipryBkN#s$m! z#Si5t$xGe$sEIi9DWCTf1?SOB2i#R?n`PpLQo~qP z`REtj3FWqi5z*1Fyp-)s2lH3RhW#n` zy0`Nkr3xlW)>o&C--ABfqrAexYKZ6-f*; zW&C@EJ6G#~kdM;2APF_7ew9*!+%$wt zqf0vHx1`JO>sxTiEXQ#rukL}{E1PAWL?u`H_>}Xth?z+yyJN2Le-#lyJeTY#Ecfi8 zc{fON{nl%zvAyl!sG`M1qTe>brkG)6^;)cyq_`0m>^VG6Csz6{;>ooHl(-%yre3)D zw!UOG4zbM2gb#I1||z+JS*QZ;FGT=kd2 z#Cm(%Q?z?(F^gvO3PZCVBkqz>B_p(PGQ_Sva~|KPyMNF2t1p!5YoL+sh@*VX8gs7& zPSmIdj~J=yHp+qysk)1&l2RM^EC{24E%wH(1ELjIjTZx2%s(XJ%R+Ps)W$Z@nHT$d-=s9uv90c`zQ4IJ`0heFd?Vw&?A?Z^ zv7iZYo8OgAPTak_-%k9FejZL#L{Km6ylA@iM}?`JBWn$%?*~KmtY$0N=G=FXpEspG z?iY&!oosjn?Wp5@>kq0AhIv|p?&)@sJev>98%!9dQ=-P8cMROeWK^elCD%5kmQW5j zSTF2`hZs{`UTNvC6_tZOi5)%sVZ0mE<8al}gQ4)#qoGqDP`Ka0tFRXffBHMP#9PIx zyuz+~9Lh4&gW9AdHx|w*(iP)VEjyKK;!`X%x7!@vE}~2c2ATWV~QXV#++9lcUc=hd7=^ z%}UwpQhpxJw%7(5&5ndYJTy@%E*IBq6sPV+i0hqby)b)nqs|@67Lk)8dw_aKV9W1a z{zy$rS(IPk&3n9EE3{Eko2f(JJT1XQjX1ET5||uA+hr81{K5*Tk#;JSIDVAFe%3%Z zJ9+t|js6g`(y87A5m>CteRgJhVdH^ntH1`#iI0oHHr6D2z2d?j+)`IV(;|t4>Yx<# z{b6$q8kA8~+&JQ&_GEhMnhh+bM~GH!f8=i5QXD$Br@`?CzbG5ozA)<@PS?yUfi0L6 z%#odnq;9M&IWoS-kQ1gu_1D-ce3O-j)+FuDaaw{BQy2(u(^Jrzgo|qme^l-hK&n$| z>n;3k-1X2*)}s^IV7hjHexzvKX}1Wmc7dz>!(gRIZKn8>B&};|eb4Ju_NZ3~GX&3` zrk8pY_F8^Ihzvd3?yD_8 z!mH+AR;DGG$8h9I%P8V5y3~Fh_#$H!?d9lC3ryv*iz{Ech*C9YH(xpXD}x?fz{Ett((1fcI;oMi6GwH7#Y5{ zUTeP&^(>m=oxsE#-*?GbJV1@E$?~HFy6WxmLbWPg3FG*n7I&5G?=#TH#9M^zPpc6^ zGQX4Ng&67eVdzlXD?LIT13T~mq^mOGS433$T;p;!{fxt*i+7^oJ34WrEq``Q-{+p!e^{?hia1st+auk z;7mpB(4o#$UqIp&@9aXnINY!`jTo7}rifG*Z*e=EWOFuk?-zaWExb&dgha2bvP6I;9?yj!e-a@CsEpvFdGeQn}!d=U4SH1>56Ya;IEp~nSb+3Z@9qaU`8s!v^_1v41 zq~Xk8Cb0w6EtZiB$i-YxHq)KLHXUnYW* zC^Kn5-}{y5HXt&mcqBzZ;HBiFZLg*4KF`)vb@q9Y!okRUQ#q;l zppOTAmpjF?Q4Fo?AD&K6=*;sD4|!APPDM6#Im!Z^baTo^pVc`R4H@LjMIwUGt z)wImYU3i!l`i$~5sM+>yfZRm1Xe)NLzn}q)3kKVd!Itjk9!wDECoX+;pQi1I1zVy2n?$=`9VSN2(V3 z?u|{;ZO{K%<{9`Ydfs;S>Qc{B%nqZ}v07=U?k6vIVUtNDO6+`l-on+dBLWO(HGfDw z?8Is1nnluRl8 zn?b43Y(9)#KmsDG_*vM?_!=CcaBRPsha?FLv#|T{;DR4I^Nm72yC14UK5}@f%dq_m z_eGPYCLS0X#gBn_&*KM?)etJM^EC`FiY)BOMo|4qV`OqSF&yP!`H8j0t8C17Ytrn+U&$abWMu&=_{Eu=gq>86q zcCs6M?6cZ7J;s*TBonbV(u7jhi)A3OTgG23Y>;z&!lQI&ACy9`**uH&ctEuhsc|$Z zbJcw(c=6~d^veJ(uB9Oy93&!|T4%REY_571*FH2R+`H7DjjT3IdXN|{nO(K^gJ2(Qa-m=ku6|y%sy~i3k(i@ zxx76&YvJbo5V8wr(Tq5?{NN8*zt;*0y)uiiEGlI)S?%~pCwgF#Xx8F=ml@grC&b@Us>B#3bZ%zWODgsCZ>10ACr|6q3Ba?#2|J#(yE|a0 zYmYdmE9UzdM|KwEi<$tlo7Wz_#I=&yt#jt4AP5Cpp`Z$8PfF>WzgVn+%qM)s+AKKS z`&?dw*|nlRAzWzEUhC3_x1|2dBp90Y;;8z7Q|RGcWlTHj+Zg}!I_quMkI_>KZ*T>N z%i@Rk*ZC6+Mnvo*1*h8J;#eHl={f~mOk&est9a79i#%{aYeB*~v$F=qruoIkcKR6a zNFUvcZBG)f`(Ulx0Mc{kU_70&GO_zM`sbRE`Z??)RGkrVwcaVaYca1LLP%2iegd|} zQT!luz8@H!pBKS=;eN-JFsI9qeW1#w%<B4v}0w!m4T&U zQz1#M+0WOUy8tZLT!skP)i~3P9feBz^@*Xrv00hH^OOrPL+JpY@Wsk9!|^h;ZGl=n zhlF(gXJj-G%|vV)-{lUhAOm~A*xOx07!$o&O|xy4aqiu{aNFqNsq$U)#JkSs26#vi zc$)s>>F$7~liIV@ex*3y&{4)h*o}PzF{?c;=|wzvDS6f+_dCmTj7g{XRL!m@?o`PH z&Z0MkFc|H2{{0VH6{W2Yc}FRvx$nB-9d!x2fCV+A&e}yrxx#2)I#kJesM0E9>3?`Xaxju0z zv7Dd4&D|fJkohM>f^1c7%rR%Ckt1Jb8V8 zBg}~^Z>8~}sJ6x@T>~lm|Avnn_+BL0Bw&)3E4|nygv3Vi^Ph7X{`mNWGB`JSYj~CW z30*=ei0!No3AfgW)=VF-r$c7LwJ8Q}5ykx;YTr>;NQouyxh^$7UHy>yL$nwIYTy3la9OtBxdQ$^(9`6YXq9zJcacy2o3gz- zGOdhfT(fMf*p`{ z__TvwVT_^|`&k(NJShbI4yhsp9IGmbdUX3X3N8YBkD8GT;;ESrZkiXjvEOPZCtBsq z^{f)ST3A<$f2r46sbZ4a1N?II21fd+S#P|MdCC5~I~kC$dQK>7&LB;G>Xw?% zHN+QdNy$xJ5>eUiuC89ukQu+8cp!Q>?{U`B@R>c%&wKCpY3Q|>$XgrzQNkHg{1ual z2(6hjy*%<7_A&eQ+XJ%oL!ov%1DNBX%8|^z0=D;y(#+n{_F2b<)m%bxBX8&86!snC z_I5?b4h>x_H+fu4n^v_+kHjQ)#fPxK+nr&GxLBY@0(a>dmf$+?1STze&efH7R?_yi zCjBeOkoBu9)D2xyNHeDCri!o6JIrYavgTzb_lF)r=$Ngp5)J#7_ODZXkl6}b8mLaG z71%Zc*_LdwW$ZX$f5~mP8I6ALNnSmaInkZmQ)p|F#fsBB%Q1`1gcdtDn|G% zN{b3;vUh(a?q|!^mtzo2sx&-~x>){9-SU)7FR|K-o4T^JY&+GGa!}KDYG&2H_giV? zO>6UHouVl?2QD6D7hTilifkAHjt$O`{Tmu4EkQeMS_`;&s$(_Qsm zu?J^5R>JwjWW+8_#Q=H*Urdzq9RIRg>D zeBvrvHTR<;%qh#}Q&B|M`#KlDjfkn{_NZRZH%t-wT#a@TJC@B^X;sR?At$=`t+(N#1<;f%Jn7Qbf1b(0|Nh+)M290?a9-tJuTA=HukZG^yrR+;C zMp5z|yZ)f$uboDmuINRF^rV#1x^BzXO|>TEsoh6+bK}xgAuFiWcpG+b{j)_NPo=^( zLE5rm_pQ`TkhdAcbhq}`IYRvE&!dYcQ{#)VKU>6i8}}f1x8CczE;e%OrIUiMp;Zg+ zrjA*V6L2|!sHm0Tw$F7er5fNT)>hka8?(^h;+5F}p3H4`0arb%F-%Bz5HXu%mJU*t zu4}!`836Yis%;)nrFi5CvPtD(+?t8K<^4(@Mk;!GeVxAhyOz~Brj+AC1~aeeo|osG z7L+AZh@)DCK|$`u_ywIxv_5F+xAhmF`Yb=^u&rY7w~8oBXsB}}E$$*y^gQ7ohK7V$ zaKyI6_MCKCsKh@3@KBy$qS8QJU(m#0#ALE9^!cjU02OQOqH`r2s|}RZw+b~bF`!rV z+B-0t(TbaHJ9Km%taU`~eM5P!1kEImqz~YBA34j*2=NEN$9QW)lU){<&umTkA{`P8 zseT4=dmlnX)9f)_Q7oOlZi``vuvEbziz3}UM$nsZSvxH_)vrR|znP@lL;N^f?H*Sv z%C?79p!#|QzOVbkrT&TPlk*4_s-EO0H-)*qg-s{D&~36+Ud5`(z$qYs|2Xr+3rs;PcIgeagu72j=(zZOTkJVp#aL2D!Qg>8TpK)hd z=gjyRdqDV;N!Smvq~A<6^&>uomS_79E&O~u3q?eQ%&Ek`=3xL;8E(JAzf_F^?;9!8<$7^k`D0gWC z{)RdB@}vK8&`7(mY?!9&~Trg%tXO` zV`z%~JAF!H0WH=*y&N>664m*FySzN?mimz1UXyqv*R-T!qx(z_5#2ED2>@j3oNrxD z6M+083ZY#1*jX^oQgG zdfe#Mkbob{FK8*txk9w{ougCObMmLvkmPb*-^tfGifVSqioYD%a~h|g!S~GIc;1ey zBWSxX&v4^ReXcIKcNPHxG!}g{>HvL zY)g~DGwVF zUB}7W+_j(r6UFZwk9LC?HKj9V(Y4r&>j&pb+XDlBw->77UW8=(OrFol&UDE3w!P}| zmZ^9BID)AmC7rS>VR!g=rD{blV=h+r>Pb2k)!45DZ=Wpg>tD(|dHm47;^J}@)mSNy zc_$qf;%B{_uN=b?%WSl>Kk)(&q8`nuraMR?pfYxZ~DJ ztnT#&)q9~7A++ke?Gw4l5W-9kYa3-cEkEq;#)|efYI}gFpGuiLsB_rghpDjmg0Or; zgn6{Gz}K;aH^go}n?sOWH~w?}fpV)Z9YAIGd@G;*Pz!vmR1z$Bgm!_otZg)g|=-2t_Q4U%Ut)`2AGcO~un0M%KbJ=i0^`r`` zUl=|_Iz?aPbnxu1l;p%6g*1FVR8G} zfz9sQm5iZg`(~!fGYH-?6ZBTsqO>EebrF*VKcXb3<`_PHnD%nX#hN3 zi~F^zI#x^^P*UFflE&tb4{?AzY_C;i?U#Zc7jao`(S)auMh&l_nd0RU9o^+>r%6=b zkG9$N8i?%7*$!*=0M*Z-7L#8~PgmOnr}ti0KFHgCN15)a>^gOQf9MKV)H z=cBIT^@Ixy1XZ$h_({qqCsfx`t*FsziYTFM>4P;}b0}Kn$_9jt! zUwvCV(XVCfs};dZ(=TSjFGzRke%_kZxw~ay!x(nop4+*L?GeY!ZY9jzFVqOPJ3Dp7 z>uqk|_{`Me4MUAbkFx2`!oEdTZFEdCEhe02_{A>xF-&~0jxFP$66q8>KuE?rDu2N2 z`z&!qJZ>*%afWzQMTut69cBTaZo3$k{E|camt|f>oG4u4eLJd@L)t8Uoqd71jP27CaJ3&Pet4fa`Jpn2vZ73Mnxf-e2uQr2mR3UdUwss-+b0){2&|~JuITi z&#T}g<@fR813Ns+4p%b*inzgbmKswq_(k)6UtquT)J)j(DukWNWPa5`V*$FaGxFs0 zfokLQ+HY2>}&i~Bd}8>yZ@tdf7G_i)8*~_zOl7UxU>@k;I-N1 zAmx`jfr*RbPtA_v^oML0;@2Q2xMDPYB`^epdw-H{XEQ58L&+I4yy*38yB=4xdCu>cR(19$(w6ODGF?zKM1Pe(^oF^9+I5HK0g!YKo;*DK%WnW#d?er%HJyuL_tx;ugOEWiHJgi%RzUd;3_K;!@COco8{?>s7N$K6; z-(tz}TC1TJnt?9FgL7WX@G-I4qybf1^wL*rv2giac+Q3K2!a@}#;H)Zq*Z0mVqL3Y z-{-dGS-@+}O^ziA{R+2HyhLUGy53$qc>NDGGedu3b~lpAI{tYdU`6FPq)yQ-t%K@T z9n9HyZu2hd4TT=P3@Gi-bC+1Dp{I=2Oi*09G*D(plTN}xC zn;s4it=#UY>Z6KpsV78>r`WBBA_HGmsgTzF7+)f-GC$NWZl81^VHu9ef!X?Dl$6fR z8#9NF??bbJyoAk+hZ700uZ5>K!Y1$JVDwp8W8~I}@Y5T#Q<-^1OjYaR zx-Milol6;&6qmQ~vKLUyhMIYEW4p|a{#GMwgS#{Ww1%ACP|m4r?}(I=P1Ts%9MZLP ze$&Fz_PBCmMOKwHcwIGhHf4_4_A7_k!x^gQLog}Hcd@odUyIDZ2gb+Fit*Vc`)a)> zNaj$XGpzBo=+Y|F_h^oIql zb5VDxJ?pYLPKzt>b45^<^(FQ{M-%%AWv`2(L){v)_lsYLx=g9bY)k$^ZrRz=Vu{op z!sIniDQqDFpo6CHmao>H%gPBt)~-Q3Pv;xX;O(H8OP-j?v(+Yo0cn>4zeNfM$Jz!n z-aqB188fOfF0slH+%c_aELMd6&_B4@W_uzK0q?d`0rw2P4qa?1lRkq#mX!6$81^SZ z-Z9Pq!Me+Y^}*USP%sg6dY7WrM_8NNe4TuZiL{bbMe;^lyM1%w-{z}z1B+z%tQh@5 zO7P~ie(EVabuOZ2r?s)PJBEr;TUIibPWFQ(`5i+~abHYy9JB6SaL!B9r>a=7K6Ybw z<=3)8GVYj(WO2#I1HBn(b(-h@M~gcR`XleLqF3>WKL3<9-EidZO7!*&1V;TtTxa?kJHy{osheURDa5Yx;v!wGm(`MJ%F4&l4c%hUq+myz2c zaf+C3MgmFu=llVGOLJ^zjeciO-VFjH^&2$m_g`2I1?-Uj!Ovq%ahvN|W~WzaMR;#$ zLT{NVWFzyfI0^Y9W`k39k?J#4*vUNivi^`(L&|k2C|v)YkPL%W$ocyFBh$aTdq(F_ z7)#jS0#;2T3;r$U+Ur5u1;E2SclU1rYHsZRdf92iHP|5GJm6um-M<;?Q*mBx%jhN5 zB^AK%4L?u~^&bG>-Sr*6f(*px(LsNH!1AU4&KDS&2^}vMVL0$vQU9MEg~?O@4E;3F zhRgElwIj;C*WV{$-DE{S{u(N+(DvO;ny;c#^gX8)U%U?MDqibU5&M4T$}0*-^UwsW zhy2(NL~|ny+FsAG_WTosqDB3=k+3PCqTjQ}F|5AXe`|9sz5gS|ENRnT{a3~9|3^i} zOfj}OLrbhQPyhf#<0otIPC=v(pG{vaWWkhiO&b9Ud$!qQ^lI-y8G8SbB6$y5AeZRamX{$KTWgC#^jYH|@s0t$bjAwI96UhGx~t>hm-;NW}l zxD#0~wu2&n_E@f06R$sBo?E8*y@354CbqgcoBhUN4}Wdp9m|nU%$|MRzoygoDT(9o zd3;R%;gEq7(=^YPf9*oRti^v&8{eaK%GL5d WsD4mY;{&Y^KucZkNu}D0H~$TO$XUn$ diff --git a/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/list.png b/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/list.png deleted file mode 100644 index 7b4311acbe0d17f871e1f1a8770e8983bb1e7628..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 47075 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Э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 literal 0 HcmV?d00001 diff --git a/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/structure.png b/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/structure.png deleted file mode 100644 index 328d52cfcfe6a3d1da55eaee155242e876fb40ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 116710 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

OO{@B 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 I_{!)10Z7Hh{Qv*} From 9a6d0aa32d61f19dc6ce087d1af7121178817ff7 Mon Sep 17 00:00:00 2001 From: malik masis Date: Tue, 17 May 2022 14:06:51 +0300 Subject: [PATCH 4/9] fixed typo --- .../2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md b/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md index 3ed95d0fdc..d53d70035e 100644 --- a/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md +++ b/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md @@ -95,7 +95,7 @@ namespace Acme.BookStore.Books } } ``` -It simply returns a list of books. You probably want to get the books from a database, but it doesn't matter for this article. To do it you can visit [here] (https://docs.abp.io/en/abp/latest/Tutorials/Part-1?UI=MVC&DB=EF) +It simply returns a list of books. You probably want to get the books from a database, but it doesn't matter for this article. To do it you can visit [here](https://docs.abp.io/en/abp/latest/Tutorials/Part-1?UI=MVC&DB=EF) ### Consume the app service from the console application Change `ClientDemoService` as shown the following in the `Acme.BookStore.HttpApi.Client.ConsoleTestApp` project under the test folder. From b8bca527195cbfef91d85cb5ed26293bab4d971f Mon Sep 17 00:00:00 2001 From: malik masis Date: Tue, 17 May 2022 14:07:18 +0300 Subject: [PATCH 5/9] added a new line to better view --- .../2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md b/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md index d53d70035e..dbf62d1628 100644 --- a/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md +++ b/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md @@ -179,6 +179,7 @@ abp generate-proxy -t csharp -u http://localhost:44397/ ```` You should have seen the generated files under the selected folder. +
![files of the static proxy](./static-proxy.png) Now you can run your test console application and you should see the same output. From 2c69850c7ba11492fb1ef7d210771cf501c24879 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Thu, 19 May 2022 14:54:05 +0300 Subject: [PATCH 6/9] Revisit the article: Consuming REST APIs from a .NET Client Using ABP's Client Proxy System --- .../POST.md | 142 +++++++++--------- 1 file changed, 67 insertions(+), 75 deletions(-) diff --git a/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md b/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md index dbf62d1628..894c710dc7 100644 --- a/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md +++ b/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md @@ -1,33 +1,18 @@ -# Consuming REST APIs from a .NET Client Using ABP's Client Proxy System -In this article, we will show how to consume Rest API by creating a new project and converting that from the dynamic client proxy to the static client proxy. Also, I will glance at the differences and similarities between static and dynamic generic proxies. - -Article flow -* Create a new ABP application with ABP CLI -* Create application service interface -* Implement the application service -* Consume the app service from the console application -* Convert application to use static client proxies -* Add authorization to the application service endpoint -* Grant the permission -* Further reading - -### Create a new ABP application with ABP CLI -Firstly create a new template via ABP CLI. +# Consuming HTTP APIs from a .NET Client Using ABP's Client Proxy System -````shell -abp new Acme.BookStore -t app -```` - -> If you haven't installed it yet, you should install the [ABP CLI](https://docs.abp.io/en/abp/latest/CLI). +In this article, I will show how to consume your HTTP APIs from a .NET application using ABP's [dynamic](https://docs.abp.io/en/abp/latest/API/Dynamic-CSharp-API-Clients) and [static](https://docs.abp.io/en/abp/latest/API/Static-CSharp-API-Clients) client-side proxy systems. I will start by creating a new project and consume the HTTP APIs from a .NET console application using dynamic client proxies. Then I will switch to static client proxies. Finally, I will glance at the differences and similarities between static and dynamic generic proxies. -After restoring the project will download the NuGet packages. +## Create a new ABP application with the ABP CLI +Firstly create a new solution via [ABP CLI](https://docs.abp.io/en/abp/latest/CLI): -Now you should run the DbMigrator project to up your database and your project is ready for running. +````shell +abp new Acme.BookStore +```` -From now on, we will add some files to show the case to you. +> See ABP's [Getting Started document](https://docs.abp.io/en/abp/latest/Getting-Started-Setup-Environment?UI=MVC&DB=EF&Tiered=No) to learn how to create and run your application, if you haven't done it before. -### Create application service interface -Define an interface for the application service. Create an `IBookAppService` interface in the `Books` folder (namespace) of the `Acme.BookStore.Application.Contracts` project: +## Create application service interface +I will start by creating an application service and expose it as HTTP API to be consumed by remote clients. First, define an interface for the application service; Create an `IBookAppService` interface in the `Books` folder (namespace) of the `Acme.BookStore.Application.Contracts` project: ````csharp using System.Threading.Tasks; @@ -38,12 +23,12 @@ namespace Acme.BookStore.Books { public interface IBookAppService : IApplicationService { - Task> GetListAsync(PagedAndSortedResultRequestDto input); + Task> GetListAsync(); } } ```` -Create a `Books` folder (namespace) in the `Acme.BookStore.Application.Contracts` project and add a `BookDto` class inside it: +Also add a `BookDto` class inside the same `Books` folder: ```csharp using System; @@ -51,20 +36,16 @@ using Volo.Abp.Application.Dtos; namespace Acme.BookStore.Books { - public class BookDto : AuditedEntityDto + public class BookDto { - public string AuthorName { get; set; } - public string Name { get; set; } - - public DateTime PublishDate { get; set; } - + public string AuthorName { get; set; } public float Price { get; set; } } } ``` -# Implement the application service +## Implement the application service It is time to implement the `IBookAppService` interface. Create a new class, named `BookAppService` in the `Books` namespace (folder) of the `Acme.BookStore.Application` project: ```csharp @@ -79,7 +60,7 @@ namespace Acme.BookStore.Books { public class BookAppService : ApplicationService, IBookAppService { - public Task> GetListAsync(PagedAndSortedResultRequestDto input) + public Task> GetListAsync() { var bookDtos = new List() { @@ -95,10 +76,10 @@ namespace Acme.BookStore.Books } } ``` -It simply returns a list of books. You probably want to get the books from a database, but it doesn't matter for this article. To do it you can visit [here](https://docs.abp.io/en/abp/latest/Tutorials/Part-1?UI=MVC&DB=EF) +It simply returns a list of books. You probably want to get the books from a database, but it doesn't matter for this article. If you want it, you can fully implement [this tutorial](https://docs.abp.io/en/abp/latest/Tutorials/Part-1?UI=MVC&DB=EF). -### Consume the app service from the console application -Change `ClientDemoService` as shown the following in the `Acme.BookStore.HttpApi.Client.ConsoleTestApp` project under the test folder. +## Consume the app service from the console application +The startup solution comes with an example .NET console application (`Acme.BookStore.HttpApi.Client.ConsoleTestApp`) that is fully configured to consume your HTTP APIs remotely. Change `ClientDemoService` as shown the following in the `Acme.BookStore.HttpApi.Client.ConsoleTestApp` project (it is under the `test` folder). ```csharp using Acme.BookStore.Books; @@ -127,13 +108,19 @@ public class ClientDemoService : ITransientDependency } ``` -The output should be -> Books: Anna Karenina, Crime and Punishment, Mother +We are basically injecting the `IBookAppService` interface to consume the remote service. ABP handles all the details (performing HTTP request, deserializing the resulting JSON object, etc) for us. + +You can run the application to see the output: + +```` +Books: Anna Karenina, Crime and Punishment, Mother +```` -### Convert application to use static client proxies +## Convert application to use static client proxies Before showing you how to use static client proxies instead of dynamic client proxies, I ask you to talk differences between both approaches. Their similarities, advantages and disadvantages to each other. -##### Benefits +**Benefits (both valid for dynamic and static proxies):** + * Maps C# method calls to remote server HTTP calls by considering the HTTP method, route, query string parameters, request payload and other details. * Authenticates the HTTP Client by adding access token to the HTTP header. * Serializes to and deserialize from JSON. @@ -141,16 +128,11 @@ Before showing you how to use static client proxies instead of dynamic client pr * Add correlation id, current tenant id and the current culture to the request. * Properly handles the error messages sent by the server and throws proper exceptions. -##### Differences -Static generic proxies provide better performance because it doesn't need to run on runtime, but you should **re-generate** once changing API endpoint definition. Dynamic generic proxies don't need **re-generate** again because it works on the runtime but it happens more a bit time. +**Differences of dynamic and static proxies:** -Now focus on how to do it, -Firstly add Volo.Abp.Http.Client NuGet package to your client project: -````shell -Install-Package Volo.Abp.Http.Client -```` +Static generic proxies provide **better performance** because it doesn't need to run on runtime, but you should **re-generate** once changing the API endpoint definition. Dynamic generic proxies don't need re-generate again because it works on the runtime but it has a slight performance penalty. -> The [application startup template](https://docs.abp.io/en/abp/latest/Startup-Templates/Application) comes pre-configured for the **dynamic** client proxy generation, in the `HttpApi.Client` project. If you want to switch to the **static** client proxies, change `context.Services.AddHttpClientProxies` to `context.Services.AddStaticHttpClientProxies` in the module class of your `HttpApi.Client` project. +The [application startup template](https://docs.abp.io/en/abp/latest/Startup-Templates/Application) comes pre-configured for the **dynamic** client proxy generation, in the `HttpApi.Client` project. If you want to switch to the **static** client proxies, you should change `context.Services.AddHttpClientProxies` to `context.Services.AddStaticHttpClientProxies` in the module class of your `HttpApi.Client` project: ```csharp public class BookStoreHttpApiClientModule : AbpModule @@ -159,7 +141,7 @@ public class BookStoreHttpApiClientModule : AbpModule public override void ConfigureServices(ServiceConfigurationContext context) { - //Other configurations + // Other configurations... context.Services.AddStaticHttpClientProxies( typeof(BookStoreApplicationContractsModule).Assembly, @@ -172,24 +154,28 @@ public class BookStoreHttpApiClientModule : AbpModule `AddStaticHttpClientProxies` method gets an assembly, finds all service interfaces in the given assembly, and prepares for static client proxy generation. -Now you're ready to generate the client proxy code by running the following command in the root folder of your client project when your project is running. +Now you're ready to generate the client proxy code by running the following command in the root folder of your client project while your server-side project is running: ````bash abp generate-proxy -t csharp -u http://localhost:44397/ ```` -You should have seen the generated files under the selected folder. -
+> The URL (`-u` parameter's value) might be different for your application. It should be server's root URL. + +You should have seen the generated files under the selected folder: + ![files of the static proxy](./static-proxy.png) -Now you can run your test console application and you should see the same output. -> Books: Anna Karenina, Crime and Punishment, Mother +Now you can run the console client application again. You should see the same output: -### Add authorization -ABP Framework provides an authorization system based on the ASP.NET Core's authorization infrastructure. -Even so, to use that need to make some configurations. +```` +Books: Anna Karenina, Crime and Punishment, Mother +```` -Under `Acme.BookStore.Application.Contracts` open `BookStorePermissions` and paste the below code +## Add authorization +ABP Framework provides an [authorization system](https://docs.abp.io/en/abp/latest/Authorization) based on the [ASP.NET Core's authorization infrastructure](https://docs.microsoft.com/en-us/aspnet/core/security/authorization/introduction). We can define permissions and restrict access to some of our application's functionalities, so only the allowed users/clients can use these functionalities. Here, I will define a permission to be able to get the list of books. + +Under `Acme.BookStore.Application.Contracts` open `BookStorePermissions` and paste the below code: ```csharp namespace Acme.BookStore.Permissions; @@ -214,31 +200,37 @@ public class BookStorePermissionDefinitionProvider : PermissionDefinitionProvide { public override void Define(IPermissionDefinitionContext context) { - var bookStoreGroup = context.AddGroup(BookStorePermissions.GroupName, L("Permission:BookStore")); - bookStoreGroup.AddPermission(BookStorePermissions.Books.Default, L("Permission:Books")); - } - - private static LocalizableString L(string name) - { - return LocalizableString.Create(name); + var bookStoreGroup = context.AddGroup(BookStorePermissions.GroupName); + bookStoreGroup.AddPermission(BookStorePermissions.Books.Default); } } ``` -And now you should add [Authorize(BookStorePermissions.Books.Default)] to `BookAppService` -If you don't give permission you should see the following error on the console application. +We can now add `[Authorize(BookStorePermissions.Books.Default)]` attribute to the `BookAppService` class: -> Authorization failed. These requirements were not met: +````csharp +[Authorize(BookStorePermissions.Books.Default)] +public class BookAppService : ApplicationService, IBookAppService +{ + ... +} +```` + +If you now run the server, then run the console client application, you will see the following error on the console application: + +```` +Authorization failed. These requirements were not met: PermissionRequirement: BookStore.Books AuthenticationScheme: Identity.Application was forbidden. Request finished HTTP/1.1 GET https://localhost:44397/api/app/book?SkipCount=0&MaxResultCount=10&api-version=1.0 - - - 403 0 - 156.9766ms +```` -After completing that you can make the localization configuration and you should give permission at the Admin UI side. You can see the same output again and all will be alright. +To fix the problem, we should grant permission for the admin user. We are granting permission to the admin user because the console application is configured to use Resource Owner Password Grant Flow. That means the client application is consuming services on behalf of the admin user. You can see the configuration in the `appsettings.json` file of the console application. -### Further Reading -In this small tutorial, I explained how you can create an example project and apply static client proxy instead of dynamic client proxy. Also summarized the differences between both approaches. +**TODO: Show how to give permission, with screenshots** -If you want to get more information, you can read the following documents: +### Further Reading +In this tutorial, I explained how you can create an example project and apply static client proxy instead of dynamic client proxy. Also summarized the differences between both approaches. If you want to get more information, you can read the following documents: * [Static C# API Client Proxies](https://docs.abp.io/en/abp/latest/API/Static-CSharp-API-Clients) * [Dynamic C# API Client Proxies](https://docs.abp.io/en/abp/latest/API/Dynamic-CSharp-API-Clients) -* [Web Application Development Tutorial ](https://docs.abp.io/en/abp/latest/Tutorials/Part-1?UI=MVC&DB=EF) +* [Web Application Development Tutorial](https://docs.abp.io/en/abp/latest/Tutorials/Part-1?UI=MVC&DB=EF) From a5bdfca712234c7dbff6ffa9befac03ef2a93418 Mon Sep 17 00:00:00 2001 From: malik masis Date: Mon, 23 May 2022 13:33:49 +0300 Subject: [PATCH 7/9] Updated the doc Edited the error output and ui for permission --- .../POST.md | 69 +++++++++++------- .../permission.png | Bin 0 -> 52911 bytes 2 files changed, 41 insertions(+), 28 deletions(-) create mode 100644 docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/permission.png diff --git a/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md b/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md index 894c710dc7..b94b10780b 100644 --- a/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md +++ b/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md @@ -2,12 +2,21 @@ In this article, I will show how to consume your HTTP APIs from a .NET application using ABP's [dynamic](https://docs.abp.io/en/abp/latest/API/Dynamic-CSharp-API-Clients) and [static](https://docs.abp.io/en/abp/latest/API/Static-CSharp-API-Clients) client-side proxy systems. I will start by creating a new project and consume the HTTP APIs from a .NET console application using dynamic client proxies. Then I will switch to static client proxies. Finally, I will glance at the differences and similarities between static and dynamic generic proxies. +**Benefits (both valid for dynamic and static proxies):** + +* Maps C# method calls to remote server HTTP calls by considering the HTTP method, route, query string parameters, request payload and other details. +* Authenticates the HTTP Client by adding access token to the HTTP header. +* Serializes to and deserialize from JSON. +* Handles HTTP API versioning. +* Add correlation id, current tenant id and the current culture to the request. +* Properly handles the error messages sent by the server and throws proper exceptions. + ## Create a new ABP application with the ABP CLI Firstly create a new solution via [ABP CLI](https://docs.abp.io/en/abp/latest/CLI): -````shell +```shell abp new Acme.BookStore -```` +``` > See ABP's [Getting Started document](https://docs.abp.io/en/abp/latest/Getting-Started-Setup-Environment?UI=MVC&DB=EF&Tiered=No) to learn how to create and run your application, if you haven't done it before. @@ -64,9 +73,9 @@ namespace Acme.BookStore.Books { var bookDtos = new List() { - new BookDto(){ Name = "Anna Karenina", AuthorName ="Tolstoy", Price = 50}, + new BookDto(){ Name = "Hunger", AuthorName ="Knut Hamsun", Price = 50}, new BookDto(){ Name = "Crime and Punishment", AuthorName ="Dostoevsky", Price = 60}, - new BookDto(){ Name = "Mother", AuthorName ="Gorki", Price = 70} + new BookDto(){ Name = "For Whom the Bell Tolls", AuthorName ="Ernest Hemingway", Price = 70} }; return Task.FromResult(new PagedResultDto( bookDtos.Count, @@ -112,26 +121,13 @@ We are basically injecting the `IBookAppService` interface to consume the remote You can run the application to see the output: -```` +``` Books: Anna Karenina, Crime and Punishment, Mother -```` +``` ## Convert application to use static client proxies Before showing you how to use static client proxies instead of dynamic client proxies, I ask you to talk differences between both approaches. Their similarities, advantages and disadvantages to each other. -**Benefits (both valid for dynamic and static proxies):** - -* Maps C# method calls to remote server HTTP calls by considering the HTTP method, route, query string parameters, request payload and other details. -* Authenticates the HTTP Client by adding access token to the HTTP header. -* Serializes to and deserialize from JSON. -* Handles HTTP API versioning. -* Add correlation id, current tenant id and the current culture to the request. -* Properly handles the error messages sent by the server and throws proper exceptions. - -**Differences of dynamic and static proxies:** - -Static generic proxies provide **better performance** because it doesn't need to run on runtime, but you should **re-generate** once changing the API endpoint definition. Dynamic generic proxies don't need re-generate again because it works on the runtime but it has a slight performance penalty. - The [application startup template](https://docs.abp.io/en/abp/latest/Startup-Templates/Application) comes pre-configured for the **dynamic** client proxy generation, in the `HttpApi.Client` project. If you want to switch to the **static** client proxies, you should change `context.Services.AddHttpClientProxies` to `context.Services.AddStaticHttpClientProxies` in the module class of your `HttpApi.Client` project: ```csharp @@ -207,26 +203,43 @@ public class BookStorePermissionDefinitionProvider : PermissionDefinitionProvide ``` We can now add `[Authorize(BookStorePermissions.Books.Default)]` attribute to the `BookAppService` class: -````csharp +```csharp [Authorize(BookStorePermissions.Books.Default)] public class BookAppService : ApplicationService, IBookAppService { ... } -```` +``` If you now run the server, then run the console client application, you will see the following error on the console application: -```` -Authorization failed. These requirements were not met: -PermissionRequirement: BookStore.Books -AuthenticationScheme: Identity.Application was forbidden. -Request finished HTTP/1.1 GET https://localhost:44397/api/app/book?SkipCount=0&MaxResultCount=10&api-version=1.0 - - - 403 0 - 156.9766ms -```` +``` +Unhandled exception. Volo.Abp.Http.Client.AbpRemoteCallException: Forbidden + at Volo.Abp.Http.Client.ClientProxying.ClientProxyBase`1.ThrowExceptionForResponseAsync(HttpResponseMessage response) + at Volo.Abp.Http.Client.ClientProxying.ClientProxyBase`1.RequestAsync(ClientProxyRequestContext requestContext) + at Volo.Abp.Http.Client.ClientProxying.ClientProxyBase`1.RequestAsync[T](ClientProxyRequestContext requestContext) + at Volo.Abp.Http.Client.ClientProxying.ClientProxyBase`1.RequestAsync[T](String methodName, ClientProxyRequestTypeValue arguments) + at Acme.BookStore.Books.ClientProxies.BookClientProxy.GetListAsync(PagedAndSortedResultRequestDto input) in YourPath\ABPConsumingRestApiByUsingStaticProxy\src\Acme.BookStore.HttpApi.Client\ClientProxies\BookClientProxy.Generated.cs:line 20 + at Acme.BookStore.HttpApi.Client.ConsoleTestApp.ClientDemoService.RunAsync() in YourPath\ABPConsumingRestApiByUsingStaticProxy\test\Acme.BookStore.HttpApi.Client.ConsoleTestApp\ClientDemoService.cs:line 21 + at Acme.BookStore.HttpApi.Client.ConsoleTestApp.ConsoleTestAppHostedService.StartAsync(CancellationToken cancellationToken) in YourPath\ABPConsumingRestApiByUsingStaticProxy\test\Acme.BookStore.HttpApi.Client.ConsoleTestApp\ConsoleTestAppHostedService.cs:line 30 + at Microsoft.Extensions.Hosting.Internal.Host.StartAsync(CancellationToken cancellationToken) + at Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.RunAsync(IHost host, CancellationToken token) + at Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.RunAsync(IHost host, CancellationToken token) + at Acme.BookStore.HttpApi.Client.ConsoleTestApp.Program.Main(String[] args) in YourPath\ABPConsumingRestApiByUsingStaticProxy\test\Acme.BookStore.HttpApi.Client.ConsoleTestApp\Program.cs:line 12 + at Acme.BookStore.HttpApi.Client.ConsoleTestApp.Program.

(String[] args) +``` To fix the problem, we should grant permission for the admin user. We are granting permission to the admin user because the console application is configured to use Resource Owner Password Grant Flow. That means the client application is consuming services on behalf of the admin user. You can see the configuration in the `appsettings.json` file of the console application. -**TODO: Show how to give permission, with screenshots** +**Giving permission** +Once you define the permissions, you can see them on the permission management modal. + +Go to the Administration -> Identity -> Roles page, select Permissions action for the admin role to open the permission management modal: +![persmisson](./permission.png) +Grant the permissions you want and save the modal. + +**Differences of dynamic and static proxies:** +Static generic proxies provide **better performance** because it doesn't need to run on runtime, but you should **re-generate** once changing the API endpoint definition. Dynamic generic proxies don't need re-generate again because it works on the runtime but it has a slight performance penalty. ### Further Reading In this tutorial, I explained how you can create an example project and apply static client proxy instead of dynamic client proxy. Also summarized the differences between both approaches. If you want to get more information, you can read the following documents: diff --git a/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/permission.png b/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/permission.png new file mode 100644 index 0000000000000000000000000000000000000000..60e6667993f3e4883ba585e920b5d2feba38fa4e GIT binary patch literal 52911 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 TuFna-b=5TQ>)b=CS%v%$rZkIt literal 0 HcmV?d00001 From 93ae8fdb8ce8e625158fcc31889c4943a47da37f Mon Sep 17 00:00:00 2001 From: Hamza Albreem <94292623+braim23@users.noreply.github.com> Date: Mon, 23 May 2022 16:25:18 +0300 Subject: [PATCH 8/9] quick fix --- .../POST.md | 44 +++++++++---------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md b/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md index b94b10780b..d22c8bf362 100644 --- a/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md +++ b/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md @@ -1,14 +1,14 @@ # Consuming HTTP APIs from a .NET Client Using ABP's Client Proxy System -In this article, I will show how to consume your HTTP APIs from a .NET application using ABP's [dynamic](https://docs.abp.io/en/abp/latest/API/Dynamic-CSharp-API-Clients) and [static](https://docs.abp.io/en/abp/latest/API/Static-CSharp-API-Clients) client-side proxy systems. I will start by creating a new project and consume the HTTP APIs from a .NET console application using dynamic client proxies. Then I will switch to static client proxies. Finally, I will glance at the differences and similarities between static and dynamic generic proxies. +In this article, I will explain how to consume HTTP APIs from a .NET application using ABP's [dynamic](https://docs.abp.io/en/abp/latest/API/Dynamic-CSharp-API-Clients) and [static](https://docs.abp.io/en/abp/latest/API/Static-CSharp-API-Clients) client-side proxy systems. I will start by creating a new project and consume the HTTP APIs from a .NET console application using dynamic client proxies. Then I will switch to static client proxies. Finally, I will glance at the differences and similarities between static and dynamic generic proxies. **Benefits (both valid for dynamic and static proxies):** * Maps C# method calls to remote server HTTP calls by considering the HTTP method, route, query string parameters, request payload and other details. -* Authenticates the HTTP Client by adding access token to the HTTP header. +* Authenticates the HTTP Client by adding an access token to the HTTP header. * Serializes to and deserialize from JSON. * Handles HTTP API versioning. -* Add correlation id, current tenant id and the current culture to the request. +* Adds correlation id, current tenant id and the current culture to the request. * Properly handles the error messages sent by the server and throws proper exceptions. ## Create a new ABP application with the ABP CLI @@ -18,10 +18,10 @@ Firstly create a new solution via [ABP CLI](https://docs.abp.io/en/abp/latest/CL abp new Acme.BookStore ``` -> See ABP's [Getting Started document](https://docs.abp.io/en/abp/latest/Getting-Started-Setup-Environment?UI=MVC&DB=EF&Tiered=No) to learn how to create and run your application, if you haven't done it before. +> See ABP's [Getting Started document](https://docs.abp.io/en/abp/latest/Getting-Started-Setup-Environment?UI=MVC&DB=EF&Tiered=No) to learn how to create and run your application, if you haven't before. -## Create application service interface -I will start by creating an application service and expose it as HTTP API to be consumed by remote clients. First, define an interface for the application service; Create an `IBookAppService` interface in the `Books` folder (namespace) of the `Acme.BookStore.Application.Contracts` project: +## Create the application service interface +I will start by creating an application service and exposing it as an HTTP API to be consumed by remote clients. First, define an interface for the application service; Create an `IBookAppService` interface in the `Books` folder (namespace) of the `Acme.BookStore.Application.Contracts` project: ````csharp using System.Threading.Tasks; @@ -55,7 +55,7 @@ namespace Acme.BookStore.Books ``` ## Implement the application service -It is time to implement the `IBookAppService` interface. Create a new class, named `BookAppService` in the `Books` namespace (folder) of the `Acme.BookStore.Application` project: +It is time to implement the `IBookAppService` interface. Create a new class named `BookAppService` in the `Books` namespace (folder) of the `Acme.BookStore.Application` project: ```csharp using Acme.BookStore.Permissions; @@ -88,7 +88,7 @@ namespace Acme.BookStore.Books It simply returns a list of books. You probably want to get the books from a database, but it doesn't matter for this article. If you want it, you can fully implement [this tutorial](https://docs.abp.io/en/abp/latest/Tutorials/Part-1?UI=MVC&DB=EF). ## Consume the app service from the console application -The startup solution comes with an example .NET console application (`Acme.BookStore.HttpApi.Client.ConsoleTestApp`) that is fully configured to consume your HTTP APIs remotely. Change `ClientDemoService` as shown the following in the `Acme.BookStore.HttpApi.Client.ConsoleTestApp` project (it is under the `test` folder). +The startup solution comes with an example .NET console application (`Acme.BookStore.HttpApi.Client.ConsoleTestApp`) that is fully configured to consume your HTTP APIs remotely. Change `ClientDemoService` as shown in the following `Acme.BookStore.HttpApi.Client.ConsoleTestApp` project (it is under the `test` folder). ```csharp using Acme.BookStore.Books; @@ -125,8 +125,8 @@ You can run the application to see the output: Books: Anna Karenina, Crime and Punishment, Mother ``` -## Convert application to use static client proxies -Before showing you how to use static client proxies instead of dynamic client proxies, I ask you to talk differences between both approaches. Their similarities, advantages and disadvantages to each other. +## Convert the application to use static client proxies +Before showing you how to use static client proxies instead of dynamic client proxies, I will mention the differences between both approaches. Their similarities, advantages and disadvantages to each other. The [application startup template](https://docs.abp.io/en/abp/latest/Startup-Templates/Application) comes pre-configured for the **dynamic** client proxy generation, in the `HttpApi.Client` project. If you want to switch to the **static** client proxies, you should change `context.Services.AddHttpClientProxies` to `context.Services.AddStaticHttpClientProxies` in the module class of your `HttpApi.Client` project: @@ -147,7 +147,7 @@ public class BookStoreHttpApiClientModule : AbpModule } ``` -`AddStaticHttpClientProxies` method gets an assembly, finds all service interfaces in the given assembly, and prepares for static client proxy generation. +The `AddStaticHttpClientProxies` method gets an assembly, finds all service interfaces in the given assembly, and prepares for static client proxy generation. Now you're ready to generate the client proxy code by running the following command in the root folder of your client project while your server-side project is running: @@ -156,9 +156,9 @@ Now you're ready to generate the client proxy code by running the following comm abp generate-proxy -t csharp -u http://localhost:44397/ ```` -> The URL (`-u` parameter's value) might be different for your application. It should be server's root URL. +> The URL (`-u` parameter's value) might be different for your application. It should be the server's root URL. -You should have seen the generated files under the selected folder: +You should see the generated files under the selected folder: ![files of the static proxy](./static-proxy.png) @@ -169,7 +169,7 @@ Books: Anna Karenina, Crime and Punishment, Mother ```` ## Add authorization -ABP Framework provides an [authorization system](https://docs.abp.io/en/abp/latest/Authorization) based on the [ASP.NET Core's authorization infrastructure](https://docs.microsoft.com/en-us/aspnet/core/security/authorization/introduction). We can define permissions and restrict access to some of our application's functionalities, so only the allowed users/clients can use these functionalities. Here, I will define a permission to be able to get the list of books. +The ABP Framework provides an [authorization system](https://docs.abp.io/en/abp/latest/Authorization) based on [ASP.NET Core's authorization infrastructure](https://docs.microsoft.com/en-us/aspnet/core/security/authorization/introduction). We can define permissions and restrict access to some of our application's functionalities, so only the allowed users/clients can use these functionalities. Here, I will define a permission to be able to get the list of books. Under `Acme.BookStore.Application.Contracts` open `BookStorePermissions` and paste the below code: ```csharp @@ -186,7 +186,7 @@ public static class BookStorePermissions } ``` -Also need to change `BookStorePermissionDefinitionProvider` under the same folder and project as follows. +You also need to change `BookStorePermissionDefinitionProvider` under the same folder and project as follows: ```csharp using Acme.BookStore.Localization; using Volo.Abp.Authorization.Permissions; @@ -201,7 +201,7 @@ public class BookStorePermissionDefinitionProvider : PermissionDefinitionProvide } } ``` -We can now add `[Authorize(BookStorePermissions.Books.Default)]` attribute to the `BookAppService` class: +We can now add the `[Authorize(BookStorePermissions.Books.Default)]` attribute to the `BookAppService` class: ```csharp [Authorize(BookStorePermissions.Books.Default)] @@ -211,7 +211,7 @@ public class BookAppService : ApplicationService, IBookAppService } ``` -If you now run the server, then run the console client application, you will see the following error on the console application: +If you run the server now, then run the console client application, you will see the following error on the console application: ``` Unhandled exception. Volo.Abp.Http.Client.AbpRemoteCallException: Forbidden @@ -229,20 +229,20 @@ Unhandled exception. Volo.Abp.Http.Client.AbpRemoteCallException: Forbidden at Acme.BookStore.HttpApi.Client.ConsoleTestApp.Program.
(String[] args) ``` -To fix the problem, we should grant permission for the admin user. We are granting permission to the admin user because the console application is configured to use Resource Owner Password Grant Flow. That means the client application is consuming services on behalf of the admin user. You can see the configuration in the `appsettings.json` file of the console application. +To fix the problem, we should grant permission to the admin user. We are granting permission to the admin user because the console application is configured to use the Resource Owner Password Grant Flow. That means the client application is consuming services on behalf of the admin user. You can see the configuration in the `appsettings.json` file of the console application. **Giving permission** Once you define the permissions, you can see them on the permission management modal. -Go to the Administration -> Identity -> Roles page, select Permissions action for the admin role to open the permission management modal: +Go to the Administration -> Identity -> Roles page, select the Permissions action for the admin role to open the permission management modal: ![persmisson](./permission.png) Grant the permissions you want and save the modal. -**Differences of dynamic and static proxies:** -Static generic proxies provide **better performance** because it doesn't need to run on runtime, but you should **re-generate** once changing the API endpoint definition. Dynamic generic proxies don't need re-generate again because it works on the runtime but it has a slight performance penalty. +**The differences between dynamic and static proxies:** +Static generic proxies provide **better performance** because they don't need to run on runtime, but you should **re-generate** them once you change the API endpoint definition. Dynamic generic proxies don't need to be re-generated because they work on the runtime but they have a slight performance penalty. ### Further Reading -In this tutorial, I explained how you can create an example project and apply static client proxy instead of dynamic client proxy. Also summarized the differences between both approaches. If you want to get more information, you can read the following documents: +In this tutorial, I explained how you can create an example project and apply a static client proxy instead of a dynamic client proxy. I also summarized the differences between both approaches. If you want to get more information, you can read the following documents: * [Static C# API Client Proxies](https://docs.abp.io/en/abp/latest/API/Static-CSharp-API-Clients) * [Dynamic C# API Client Proxies](https://docs.abp.io/en/abp/latest/API/Dynamic-CSharp-API-Clients) From bc97dac9818c808014a2ad66e37541eee378d02c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Tue, 24 May 2022 08:05:30 +0300 Subject: [PATCH 9/9] Final fix for the tutorial. --- .../POST.md | 42 ++++++++----------- 1 file changed, 18 insertions(+), 24 deletions(-) diff --git a/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md b/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md index d22c8bf362..e2ad154bdd 100644 --- a/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md +++ b/docs/en/Community-Articles/2022-05-16-Consuming-Rest-Api-By-Using-Static-Proxy/POST.md @@ -2,9 +2,9 @@ In this article, I will explain how to consume HTTP APIs from a .NET application using ABP's [dynamic](https://docs.abp.io/en/abp/latest/API/Dynamic-CSharp-API-Clients) and [static](https://docs.abp.io/en/abp/latest/API/Static-CSharp-API-Clients) client-side proxy systems. I will start by creating a new project and consume the HTTP APIs from a .NET console application using dynamic client proxies. Then I will switch to static client proxies. Finally, I will glance at the differences and similarities between static and dynamic generic proxies. -**Benefits (both valid for dynamic and static proxies):** +Here the main benefits of using the client-side proxy system (either dynamic or static): -* Maps C# method calls to remote server HTTP calls by considering the HTTP method, route, query string parameters, request payload and other details. +* Automatically maps C# method calls to remote server HTTP calls by considering the HTTP method, route, query string parameters, request payload and other details. * Authenticates the HTTP Client by adding an access token to the HTTP header. * Serializes to and deserialize from JSON. * Handles HTTP API versioning. @@ -18,7 +18,7 @@ Firstly create a new solution via [ABP CLI](https://docs.abp.io/en/abp/latest/CL abp new Acme.BookStore ``` -> See ABP's [Getting Started document](https://docs.abp.io/en/abp/latest/Getting-Started-Setup-Environment?UI=MVC&DB=EF&Tiered=No) to learn how to create and run your application, if you haven't before. +> See ABP's [Getting Started document](https://docs.abp.io/en/abp/latest/Getting-Started-Setup-Environment?UI=MVC&DB=EF&Tiered=No) to learn how to create and run your application, if you haven't done it before. ## Create the application service interface I will start by creating an application service and exposing it as an HTTP API to be consumed by remote clients. First, define an interface for the application service; Create an `IBookAppService` interface in the `Books` folder (namespace) of the `Acme.BookStore.Application.Contracts` project: @@ -122,12 +122,10 @@ We are basically injecting the `IBookAppService` interface to consume the remote You can run the application to see the output: ``` -Books: Anna Karenina, Crime and Punishment, Mother +Books: Hunger, Crime and Punishment, For Whom the Bell Tolls ``` ## Convert the application to use static client proxies -Before showing you how to use static client proxies instead of dynamic client proxies, I will mention the differences between both approaches. Their similarities, advantages and disadvantages to each other. - The [application startup template](https://docs.abp.io/en/abp/latest/Startup-Templates/Application) comes pre-configured for the **dynamic** client proxy generation, in the `HttpApi.Client` project. If you want to switch to the **static** client proxies, you should change `context.Services.AddHttpClientProxies` to `context.Services.AddStaticHttpClientProxies` in the module class of your `HttpApi.Client` project: ```csharp @@ -150,7 +148,7 @@ public class BookStoreHttpApiClientModule : AbpModule The `AddStaticHttpClientProxies` method gets an assembly, finds all service interfaces in the given assembly, and prepares for static client proxy generation. -Now you're ready to generate the client proxy code by running the following command in the root folder of your client project while your server-side project is running: +Now you're ready to generate the client proxy code by running the following command in the root folder of your client project **while your server-side project is running**: ````bash abp generate-proxy -t csharp -u http://localhost:44397/ @@ -165,12 +163,14 @@ You should see the generated files under the selected folder: Now you can run the console client application again. You should see the same output: ```` -Books: Anna Karenina, Crime and Punishment, Mother +Books: Hunger, Crime and Punishment, For Whom the Bell Tolls ```` ## Add authorization The ABP Framework provides an [authorization system](https://docs.abp.io/en/abp/latest/Authorization) based on [ASP.NET Core's authorization infrastructure](https://docs.microsoft.com/en-us/aspnet/core/security/authorization/introduction). We can define permissions and restrict access to some of our application's functionalities, so only the allowed users/clients can use these functionalities. Here, I will define a permission to be able to get the list of books. +### Defining a permission + Under `Acme.BookStore.Application.Contracts` open `BookStorePermissions` and paste the below code: ```csharp namespace Acme.BookStore.Permissions; @@ -201,6 +201,8 @@ public class BookStorePermissionDefinitionProvider : PermissionDefinitionProvide } } ``` +### Authorizing the application service + We can now add the `[Authorize(BookStorePermissions.Books.Default)]` attribute to the `BookAppService` class: ```csharp @@ -214,34 +216,26 @@ public class BookAppService : ApplicationService, IBookAppService If you run the server now, then run the console client application, you will see the following error on the console application: ``` -Unhandled exception. Volo.Abp.Http.Client.AbpRemoteCallException: Forbidden - at Volo.Abp.Http.Client.ClientProxying.ClientProxyBase`1.ThrowExceptionForResponseAsync(HttpResponseMessage response) - at Volo.Abp.Http.Client.ClientProxying.ClientProxyBase`1.RequestAsync(ClientProxyRequestContext requestContext) - at Volo.Abp.Http.Client.ClientProxying.ClientProxyBase`1.RequestAsync[T](ClientProxyRequestContext requestContext) - at Volo.Abp.Http.Client.ClientProxying.ClientProxyBase`1.RequestAsync[T](String methodName, ClientProxyRequestTypeValue arguments) - at Acme.BookStore.Books.ClientProxies.BookClientProxy.GetListAsync(PagedAndSortedResultRequestDto input) in YourPath\ABPConsumingRestApiByUsingStaticProxy\src\Acme.BookStore.HttpApi.Client\ClientProxies\BookClientProxy.Generated.cs:line 20 - at Acme.BookStore.HttpApi.Client.ConsoleTestApp.ClientDemoService.RunAsync() in YourPath\ABPConsumingRestApiByUsingStaticProxy\test\Acme.BookStore.HttpApi.Client.ConsoleTestApp\ClientDemoService.cs:line 21 - at Acme.BookStore.HttpApi.Client.ConsoleTestApp.ConsoleTestAppHostedService.StartAsync(CancellationToken cancellationToken) in YourPath\ABPConsumingRestApiByUsingStaticProxy\test\Acme.BookStore.HttpApi.Client.ConsoleTestApp\ConsoleTestAppHostedService.cs:line 30 - at Microsoft.Extensions.Hosting.Internal.Host.StartAsync(CancellationToken cancellationToken) - at Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.RunAsync(IHost host, CancellationToken token) - at Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.RunAsync(IHost host, CancellationToken token) - at Acme.BookStore.HttpApi.Client.ConsoleTestApp.Program.Main(String[] args) in YourPath\ABPConsumingRestApiByUsingStaticProxy\test\Acme.BookStore.HttpApi.Client.ConsoleTestApp\Program.cs:line 12 - at Acme.BookStore.HttpApi.Client.ConsoleTestApp.Program.
(String[] args) +Unhandled exception. Volo.Abp.Http.Client.AbpRemoteCallException: Forbidden at +Volo.Abp.Http.Client.ClientProxying.ClientProxyBase`1 +.ThrowExceptionForResponseAsync(HttpResponseMessage response)... ``` To fix the problem, we should grant permission to the admin user. We are granting permission to the admin user because the console application is configured to use the Resource Owner Password Grant Flow. That means the client application is consuming services on behalf of the admin user. You can see the configuration in the `appsettings.json` file of the console application. -**Giving permission** +### Granting the permission + Once you define the permissions, you can see them on the permission management modal. Go to the Administration -> Identity -> Roles page, select the Permissions action for the admin role to open the permission management modal: ![persmisson](./permission.png) Grant the permissions you want and save the modal. -**The differences between dynamic and static proxies:** +## Dynamic vs static proxies + Static generic proxies provide **better performance** because they don't need to run on runtime, but you should **re-generate** them once you change the API endpoint definition. Dynamic generic proxies don't need to be re-generated because they work on the runtime but they have a slight performance penalty. -### Further Reading +## Further Reading In this tutorial, I explained how you can create an example project and apply a static client proxy instead of a dynamic client proxy. I also summarized the differences between both approaches. If you want to get more information, you can read the following documents: * [Static C# API Client Proxies](https://docs.abp.io/en/abp/latest/API/Static-CSharp-API-Clients)