Advertisement
Guest User

Untitled

a guest
Sep 22nd, 2019
120
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Delphi 6.35 KB | None | 0 0
  1. unit RootUnit;
  2.  
  3. {*******************************************************************************
  4.     Generated By   : JsonToDelphiClass - 0.65
  5.     Project link   : https://github.com/PKGeorgiev/Delphi-JsonToDelphiClass
  6.     Generated On   : 2019-09-22 10:33:41
  7.  
  8.     Created By     : Petar Georgiev - (http://pgeorgiev.com)
  9.     Adapted Web By : Marlon Nardi - (http://jsontodelphi.com)
  10. *******************************************************************************}
  11.  
  12. interface
  13.  
  14. uses Generics.Collections, Rest.Json;
  15.  
  16. type
  17.  
  18. TSysClass = class
  19. private
  20.   FCountry: String;
  21.   FMessage: Extended;
  22.   FSunrise: Extended;
  23.   FSunset: Extended;
  24. public
  25.   property country: String read FCountry write FCountry;
  26.   property message: Extended read FMessage write FMessage;
  27.   property sunrise: Extended read FSunrise write FSunrise;
  28.   property sunset: Extended read FSunset write FSunset;
  29.   function ToJsonString: string;
  30.   class function FromJsonString(AJsonString: string): TSysClass;
  31. end;
  32.  
  33. TCloudsClass = class
  34. private
  35.   FAll: Extended;
  36. public
  37.   property all: Extended read FAll write FAll;
  38.   function ToJsonString: string;
  39.   class function FromJsonString(AJsonString: string): TCloudsClass;
  40. end;
  41.  
  42. TWindClass = class
  43. private
  44.   FDeg: Extended;
  45.   FSpeed: Extended;
  46. public
  47.   property deg: Extended read FDeg write FDeg;
  48.   property speed: Extended read FSpeed write FSpeed;
  49.   function ToJsonString: string;
  50.   class function FromJsonString(AJsonString: string): TWindClass;
  51. end;
  52.  
  53. TMainClass = class
  54. private
  55.   FGrnd_level: Extended;
  56.   FHumidity: Extended;
  57.   FPressure: Extended;
  58.   FSea_level: Extended;
  59.   FTemp: Extended;
  60.   FTemp_max: Extended;
  61.   FTemp_min: Extended;
  62. public
  63.   property grnd_level: Extended read FGrnd_level write FGrnd_level;
  64.   property humidity: Extended read FHumidity write FHumidity;
  65.   property pressure: Extended read FPressure write FPressure;
  66.   property sea_level: Extended read FSea_level write FSea_level;
  67.   property temp: Extended read FTemp write FTemp;
  68.   property temp_max: Extended read FTemp_max write FTemp_max;
  69.   property temp_min: Extended read FTemp_min write FTemp_min;
  70.   function ToJsonString: string;
  71.   class function FromJsonString(AJsonString: string): TMainClass;
  72. end;
  73.  
  74. TWeatherClass = class
  75. private
  76.   FDescription: String;
  77.   FIcon: String;
  78.   FId: Extended;
  79.   FMain: String;
  80. public
  81.   property description: String read FDescription write FDescription;
  82.   property icon: String read FIcon write FIcon;
  83.   property id: Extended read FId write FId;
  84.   property main: String read FMain write FMain;
  85.   function ToJsonString: string;
  86.   class function FromJsonString(AJsonString: string): TWeatherClass;
  87. end;
  88.  
  89. TCoordClass = class
  90. private
  91.   FLat: Extended;
  92.   FLon: Extended;
  93. public
  94.   property lat: Extended read FLat write FLat;
  95.   property lon: Extended read FLon write FLon;
  96.   function ToJsonString: string;
  97.   class function FromJsonString(AJsonString: string): TCoordClass;
  98. end;
  99.  
  100. TRootClass = class
  101. private
  102.   FBase: String;
  103.   FClouds: TCloudsClass;
  104.   FCod: Extended;
  105.   FCoord: TCoordClass;
  106.   FDt: Extended;
  107.   FId: Extended;
  108.   FMain: TMainClass;
  109.   FName: String;
  110.   FSys: TSysClass;
  111.   FTimezone: Extended;
  112.   FWeather: TArray<TWeatherClass>;
  113.   FWind: TWindClass;
  114. public
  115.   property base: String read FBase write FBase;
  116.   property clouds: TCloudsClass read FClouds write FClouds;
  117.   property cod: Extended read FCod write FCod;
  118.   property coord: TCoordClass read FCoord write FCoord;
  119.   property dt: Extended read FDt write FDt;
  120.   property id: Extended read FId write FId;
  121.   property main: TMainClass read FMain write FMain;
  122.   property name: String read FName write FName;
  123.   property sys: TSysClass read FSys write FSys;
  124.   property timezone: Extended read FTimezone write FTimezone;
  125.   property weather: TArray<TWeatherClass> read FWeather write FWeather;
  126.   property wind: TWindClass read FWind write FWind;
  127.   constructor Create;
  128.   destructor Destroy; override;
  129.   function ToJsonString: string;
  130.   class function FromJsonString(AJsonString: string): TRootClass;
  131. end;
  132.  
  133. implementation
  134.  
  135. {TSysClass}
  136.  
  137.  
  138. function TSysClass.ToJsonString: string;
  139. begin
  140.   result := TJson.ObjectToJsonString(self);
  141. end;
  142.  
  143. class function TSysClass.FromJsonString(AJsonString: string): TSysClass;
  144. begin
  145.   result := TJson.JsonToObject<TSysClass>(AJsonString)
  146. end;
  147.  
  148. {TCloudsClass}
  149.  
  150.  
  151. function TCloudsClass.ToJsonString: string;
  152. begin
  153.   result := TJson.ObjectToJsonString(self);
  154. end;
  155.  
  156. class function TCloudsClass.FromJsonString(AJsonString: string): TCloudsClass;
  157. begin
  158.   result := TJson.JsonToObject<TCloudsClass>(AJsonString)
  159. end;
  160.  
  161. {TWindClass}
  162.  
  163.  
  164. function TWindClass.ToJsonString: string;
  165. begin
  166.   result := TJson.ObjectToJsonString(self);
  167. end;
  168.  
  169. class function TWindClass.FromJsonString(AJsonString: string): TWindClass;
  170. begin
  171.   result := TJson.JsonToObject<TWindClass>(AJsonString)
  172. end;
  173.  
  174. {TMainClass}
  175.  
  176.  
  177. function TMainClass.ToJsonString: string;
  178. begin
  179.   result := TJson.ObjectToJsonString(self);
  180. end;
  181.  
  182. class function TMainClass.FromJsonString(AJsonString: string): TMainClass;
  183. begin
  184.   result := TJson.JsonToObject<TMainClass>(AJsonString)
  185. end;
  186.  
  187. {TWeatherClass}
  188.  
  189.  
  190. function TWeatherClass.ToJsonString: string;
  191. begin
  192.   result := TJson.ObjectToJsonString(self);
  193. end;
  194.  
  195. class function TWeatherClass.FromJsonString(AJsonString: string): TWeatherClass;
  196. begin
  197.   result := TJson.JsonToObject<TWeatherClass>(AJsonString)
  198. end;
  199.  
  200. {TCoordClass}
  201.  
  202.  
  203. function TCoordClass.ToJsonString: string;
  204. begin
  205.   result := TJson.ObjectToJsonString(self);
  206. end;
  207.  
  208. class function TCoordClass.FromJsonString(AJsonString: string): TCoordClass;
  209. begin
  210.   result := TJson.JsonToObject<TCoordClass>(AJsonString)
  211. end;
  212.  
  213. {TRootClass}
  214.  
  215. constructor TRootClass.Create;
  216. begin
  217.   inherited;
  218.   FCoord := TCoordClass.Create();
  219.   FMain := TMainClass.Create();
  220.   FWind := TWindClass.Create();
  221.   FClouds := TCloudsClass.Create();
  222.   FSys := TSysClass.Create();
  223. end;
  224.  
  225. destructor TRootClass.Destroy;
  226. var
  227.   LweatherItem: TWeatherClass;
  228. begin
  229.  
  230.  for LweatherItem in FWeather do
  231.    LweatherItem.Free;
  232.  
  233.   FCoord.Free;
  234.   FMain.Free;
  235.   FWind.Free;
  236.   FClouds.Free;
  237.   FSys.Free;
  238.   inherited;
  239. end;
  240.  
  241. function TRootClass.ToJsonString: string;
  242. begin
  243.   result := TJson.ObjectToJsonString(self);
  244. end;
  245.  
  246. class function TRootClass.FromJsonString(AJsonString: string): TRootClass;
  247. begin
  248.   result := TJson.JsonToObject<TRootClass>(AJsonString)
  249. end;
  250.  
  251. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement