/modules/apps/headless/headless-portal-instances/headless-portal-instances-client/src/main/java/com/liferay/headless/portal/instances/client/resource/v1_0/PortalInstanceResource.java

https://github.com/danielreuther/liferay-portal · Java · 755 lines · 557 code · 181 blank · 17 comment · 54 complexity · b916ea8184d71acbaa83a82b1af40aeb MD5 · raw file

  1. /**
  2. * Copyright (c) 2000-present Liferay, Inc. All rights reserved.
  3. *
  4. * This library is free software; you can redistribute it and/or modify it under
  5. * the terms of the GNU Lesser General Public License as published by the Free
  6. * Software Foundation; either version 2.1 of the License, or (at your option)
  7. * any later version.
  8. *
  9. * This library is distributed in the hope that it will be useful, but WITHOUT
  10. * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
  11. * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
  12. * details.
  13. */
  14. package com.liferay.headless.portal.instances.client.resource.v1_0;
  15. import com.liferay.headless.portal.instances.client.dto.v1_0.PortalInstance;
  16. import com.liferay.headless.portal.instances.client.http.HttpInvoker;
  17. import com.liferay.headless.portal.instances.client.pagination.Page;
  18. import com.liferay.headless.portal.instances.client.problem.Problem;
  19. import com.liferay.headless.portal.instances.client.serdes.v1_0.PortalInstanceSerDes;
  20. import java.util.LinkedHashMap;
  21. import java.util.Locale;
  22. import java.util.Map;
  23. import java.util.logging.Level;
  24. import java.util.logging.Logger;
  25. import javax.annotation.Generated;
  26. /**
  27. * @author Alberto Chaparro
  28. * @generated
  29. */
  30. @Generated("")
  31. public interface PortalInstanceResource {
  32. public static Builder builder() {
  33. return new Builder();
  34. }
  35. public Page<PortalInstance> getPortalInstancesPage(Boolean skipDefault)
  36. throws Exception;
  37. public HttpInvoker.HttpResponse getPortalInstancesPageHttpResponse(
  38. Boolean skipDefault)
  39. throws Exception;
  40. public PortalInstance postPortalInstance(PortalInstance portalInstance)
  41. throws Exception;
  42. public HttpInvoker.HttpResponse postPortalInstanceHttpResponse(
  43. PortalInstance portalInstance)
  44. throws Exception;
  45. public void deletePortalInstance(String portalInstanceId) throws Exception;
  46. public HttpInvoker.HttpResponse deletePortalInstanceHttpResponse(
  47. String portalInstanceId)
  48. throws Exception;
  49. public PortalInstance getPortalInstance(String portalInstanceId)
  50. throws Exception;
  51. public HttpInvoker.HttpResponse getPortalInstanceHttpResponse(
  52. String portalInstanceId)
  53. throws Exception;
  54. public PortalInstance patchPortalInstance(
  55. String portalInstanceId, PortalInstance portalInstance)
  56. throws Exception;
  57. public HttpInvoker.HttpResponse patchPortalInstanceHttpResponse(
  58. String portalInstanceId, PortalInstance portalInstance)
  59. throws Exception;
  60. public void putPortalInstanceActivate(String portalInstanceId)
  61. throws Exception;
  62. public HttpInvoker.HttpResponse putPortalInstanceActivateHttpResponse(
  63. String portalInstanceId)
  64. throws Exception;
  65. public void putPortalInstanceDeactivate(String portalInstanceId)
  66. throws Exception;
  67. public HttpInvoker.HttpResponse putPortalInstanceDeactivateHttpResponse(
  68. String portalInstanceId)
  69. throws Exception;
  70. public static class Builder {
  71. public Builder authentication(String login, String password) {
  72. _login = login;
  73. _password = password;
  74. return this;
  75. }
  76. public PortalInstanceResource build() {
  77. return new PortalInstanceResourceImpl(this);
  78. }
  79. public Builder contextPath(String contextPath) {
  80. _contextPath = contextPath;
  81. return this;
  82. }
  83. public Builder endpoint(String host, int port, String scheme) {
  84. _host = host;
  85. _port = port;
  86. _scheme = scheme;
  87. return this;
  88. }
  89. public Builder header(String key, String value) {
  90. _headers.put(key, value);
  91. return this;
  92. }
  93. public Builder locale(Locale locale) {
  94. _locale = locale;
  95. return this;
  96. }
  97. public Builder parameter(String key, String value) {
  98. _parameters.put(key, value);
  99. return this;
  100. }
  101. public Builder parameters(String... parameters) {
  102. if ((parameters.length % 2) != 0) {
  103. throw new IllegalArgumentException(
  104. "Parameters length is not an even number");
  105. }
  106. for (int i = 0; i < parameters.length; i += 2) {
  107. String parameterName = String.valueOf(parameters[i]);
  108. String parameterValue = String.valueOf(parameters[i + 1]);
  109. _parameters.put(parameterName, parameterValue);
  110. }
  111. return this;
  112. }
  113. private Builder() {
  114. }
  115. private String _contextPath = "";
  116. private Map<String, String> _headers = new LinkedHashMap<>();
  117. private String _host = "localhost";
  118. private Locale _locale;
  119. private String _login = "";
  120. private String _password = "";
  121. private Map<String, String> _parameters = new LinkedHashMap<>();
  122. private int _port = 8080;
  123. private String _scheme = "http";
  124. }
  125. public static class PortalInstanceResourceImpl
  126. implements PortalInstanceResource {
  127. public Page<PortalInstance> getPortalInstancesPage(Boolean skipDefault)
  128. throws Exception {
  129. HttpInvoker.HttpResponse httpResponse =
  130. getPortalInstancesPageHttpResponse(skipDefault);
  131. String content = httpResponse.getContent();
  132. if ((httpResponse.getStatusCode() / 100) != 2) {
  133. _logger.log(
  134. Level.WARNING,
  135. "Unable to process HTTP response content: " + content);
  136. _logger.log(
  137. Level.WARNING,
  138. "HTTP response message: " + httpResponse.getMessage());
  139. _logger.log(
  140. Level.WARNING,
  141. "HTTP response status code: " +
  142. httpResponse.getStatusCode());
  143. throw new Problem.ProblemException(Problem.toDTO(content));
  144. }
  145. else {
  146. _logger.fine("HTTP response content: " + content);
  147. _logger.fine(
  148. "HTTP response message: " + httpResponse.getMessage());
  149. _logger.fine(
  150. "HTTP response status code: " +
  151. httpResponse.getStatusCode());
  152. }
  153. try {
  154. return Page.of(content, PortalInstanceSerDes::toDTO);
  155. }
  156. catch (Exception e) {
  157. _logger.log(
  158. Level.WARNING,
  159. "Unable to process HTTP response: " + content, e);
  160. throw new Problem.ProblemException(Problem.toDTO(content));
  161. }
  162. }
  163. public HttpInvoker.HttpResponse getPortalInstancesPageHttpResponse(
  164. Boolean skipDefault)
  165. throws Exception {
  166. HttpInvoker httpInvoker = HttpInvoker.newHttpInvoker();
  167. if (_builder._locale != null) {
  168. httpInvoker.header(
  169. "Accept-Language", _builder._locale.toLanguageTag());
  170. }
  171. for (Map.Entry<String, String> entry :
  172. _builder._headers.entrySet()) {
  173. httpInvoker.header(entry.getKey(), entry.getValue());
  174. }
  175. for (Map.Entry<String, String> entry :
  176. _builder._parameters.entrySet()) {
  177. httpInvoker.parameter(entry.getKey(), entry.getValue());
  178. }
  179. httpInvoker.httpMethod(HttpInvoker.HttpMethod.GET);
  180. if (skipDefault != null) {
  181. httpInvoker.parameter(
  182. "skipDefault", String.valueOf(skipDefault));
  183. }
  184. httpInvoker.path(
  185. _builder._scheme + "://" + _builder._host + ":" +
  186. _builder._port + _builder._contextPath +
  187. "/o/headless-portal-instances/v1.0/portal-instances");
  188. httpInvoker.userNameAndPassword(
  189. _builder._login + ":" + _builder._password);
  190. return httpInvoker.invoke();
  191. }
  192. public PortalInstance postPortalInstance(PortalInstance portalInstance)
  193. throws Exception {
  194. HttpInvoker.HttpResponse httpResponse =
  195. postPortalInstanceHttpResponse(portalInstance);
  196. String content = httpResponse.getContent();
  197. if ((httpResponse.getStatusCode() / 100) != 2) {
  198. _logger.log(
  199. Level.WARNING,
  200. "Unable to process HTTP response content: " + content);
  201. _logger.log(
  202. Level.WARNING,
  203. "HTTP response message: " + httpResponse.getMessage());
  204. _logger.log(
  205. Level.WARNING,
  206. "HTTP response status code: " +
  207. httpResponse.getStatusCode());
  208. throw new Problem.ProblemException(Problem.toDTO(content));
  209. }
  210. else {
  211. _logger.fine("HTTP response content: " + content);
  212. _logger.fine(
  213. "HTTP response message: " + httpResponse.getMessage());
  214. _logger.fine(
  215. "HTTP response status code: " +
  216. httpResponse.getStatusCode());
  217. }
  218. try {
  219. return PortalInstanceSerDes.toDTO(content);
  220. }
  221. catch (Exception e) {
  222. _logger.log(
  223. Level.WARNING,
  224. "Unable to process HTTP response: " + content, e);
  225. throw new Problem.ProblemException(Problem.toDTO(content));
  226. }
  227. }
  228. public HttpInvoker.HttpResponse postPortalInstanceHttpResponse(
  229. PortalInstance portalInstance)
  230. throws Exception {
  231. HttpInvoker httpInvoker = HttpInvoker.newHttpInvoker();
  232. httpInvoker.body(portalInstance.toString(), "application/json");
  233. if (_builder._locale != null) {
  234. httpInvoker.header(
  235. "Accept-Language", _builder._locale.toLanguageTag());
  236. }
  237. for (Map.Entry<String, String> entry :
  238. _builder._headers.entrySet()) {
  239. httpInvoker.header(entry.getKey(), entry.getValue());
  240. }
  241. for (Map.Entry<String, String> entry :
  242. _builder._parameters.entrySet()) {
  243. httpInvoker.parameter(entry.getKey(), entry.getValue());
  244. }
  245. httpInvoker.httpMethod(HttpInvoker.HttpMethod.POST);
  246. httpInvoker.path(
  247. _builder._scheme + "://" + _builder._host + ":" +
  248. _builder._port + _builder._contextPath +
  249. "/o/headless-portal-instances/v1.0/portal-instances");
  250. httpInvoker.userNameAndPassword(
  251. _builder._login + ":" + _builder._password);
  252. return httpInvoker.invoke();
  253. }
  254. public void deletePortalInstance(String portalInstanceId)
  255. throws Exception {
  256. HttpInvoker.HttpResponse httpResponse =
  257. deletePortalInstanceHttpResponse(portalInstanceId);
  258. String content = httpResponse.getContent();
  259. if ((httpResponse.getStatusCode() / 100) != 2) {
  260. _logger.log(
  261. Level.WARNING,
  262. "Unable to process HTTP response content: " + content);
  263. _logger.log(
  264. Level.WARNING,
  265. "HTTP response message: " + httpResponse.getMessage());
  266. _logger.log(
  267. Level.WARNING,
  268. "HTTP response status code: " +
  269. httpResponse.getStatusCode());
  270. throw new Problem.ProblemException(Problem.toDTO(content));
  271. }
  272. else {
  273. _logger.fine("HTTP response content: " + content);
  274. _logger.fine(
  275. "HTTP response message: " + httpResponse.getMessage());
  276. _logger.fine(
  277. "HTTP response status code: " +
  278. httpResponse.getStatusCode());
  279. }
  280. try {
  281. return;
  282. }
  283. catch (Exception e) {
  284. _logger.log(
  285. Level.WARNING,
  286. "Unable to process HTTP response: " + content, e);
  287. throw new Problem.ProblemException(Problem.toDTO(content));
  288. }
  289. }
  290. public HttpInvoker.HttpResponse deletePortalInstanceHttpResponse(
  291. String portalInstanceId)
  292. throws Exception {
  293. HttpInvoker httpInvoker = HttpInvoker.newHttpInvoker();
  294. if (_builder._locale != null) {
  295. httpInvoker.header(
  296. "Accept-Language", _builder._locale.toLanguageTag());
  297. }
  298. for (Map.Entry<String, String> entry :
  299. _builder._headers.entrySet()) {
  300. httpInvoker.header(entry.getKey(), entry.getValue());
  301. }
  302. for (Map.Entry<String, String> entry :
  303. _builder._parameters.entrySet()) {
  304. httpInvoker.parameter(entry.getKey(), entry.getValue());
  305. }
  306. httpInvoker.httpMethod(HttpInvoker.HttpMethod.DELETE);
  307. httpInvoker.path(
  308. _builder._scheme + "://" + _builder._host + ":" +
  309. _builder._port + _builder._contextPath +
  310. "/o/headless-portal-instances/v1.0/portal-instances/{portalInstanceId}");
  311. httpInvoker.path("portalInstanceId", portalInstanceId);
  312. httpInvoker.userNameAndPassword(
  313. _builder._login + ":" + _builder._password);
  314. return httpInvoker.invoke();
  315. }
  316. public PortalInstance getPortalInstance(String portalInstanceId)
  317. throws Exception {
  318. HttpInvoker.HttpResponse httpResponse =
  319. getPortalInstanceHttpResponse(portalInstanceId);
  320. String content = httpResponse.getContent();
  321. if ((httpResponse.getStatusCode() / 100) != 2) {
  322. _logger.log(
  323. Level.WARNING,
  324. "Unable to process HTTP response content: " + content);
  325. _logger.log(
  326. Level.WARNING,
  327. "HTTP response message: " + httpResponse.getMessage());
  328. _logger.log(
  329. Level.WARNING,
  330. "HTTP response status code: " +
  331. httpResponse.getStatusCode());
  332. throw new Problem.ProblemException(Problem.toDTO(content));
  333. }
  334. else {
  335. _logger.fine("HTTP response content: " + content);
  336. _logger.fine(
  337. "HTTP response message: " + httpResponse.getMessage());
  338. _logger.fine(
  339. "HTTP response status code: " +
  340. httpResponse.getStatusCode());
  341. }
  342. try {
  343. return PortalInstanceSerDes.toDTO(content);
  344. }
  345. catch (Exception e) {
  346. _logger.log(
  347. Level.WARNING,
  348. "Unable to process HTTP response: " + content, e);
  349. throw new Problem.ProblemException(Problem.toDTO(content));
  350. }
  351. }
  352. public HttpInvoker.HttpResponse getPortalInstanceHttpResponse(
  353. String portalInstanceId)
  354. throws Exception {
  355. HttpInvoker httpInvoker = HttpInvoker.newHttpInvoker();
  356. if (_builder._locale != null) {
  357. httpInvoker.header(
  358. "Accept-Language", _builder._locale.toLanguageTag());
  359. }
  360. for (Map.Entry<String, String> entry :
  361. _builder._headers.entrySet()) {
  362. httpInvoker.header(entry.getKey(), entry.getValue());
  363. }
  364. for (Map.Entry<String, String> entry :
  365. _builder._parameters.entrySet()) {
  366. httpInvoker.parameter(entry.getKey(), entry.getValue());
  367. }
  368. httpInvoker.httpMethod(HttpInvoker.HttpMethod.GET);
  369. httpInvoker.path(
  370. _builder._scheme + "://" + _builder._host + ":" +
  371. _builder._port + _builder._contextPath +
  372. "/o/headless-portal-instances/v1.0/portal-instances/{portalInstanceId}");
  373. httpInvoker.path("portalInstanceId", portalInstanceId);
  374. httpInvoker.userNameAndPassword(
  375. _builder._login + ":" + _builder._password);
  376. return httpInvoker.invoke();
  377. }
  378. public PortalInstance patchPortalInstance(
  379. String portalInstanceId, PortalInstance portalInstance)
  380. throws Exception {
  381. HttpInvoker.HttpResponse httpResponse =
  382. patchPortalInstanceHttpResponse(
  383. portalInstanceId, portalInstance);
  384. String content = httpResponse.getContent();
  385. if ((httpResponse.getStatusCode() / 100) != 2) {
  386. _logger.log(
  387. Level.WARNING,
  388. "Unable to process HTTP response content: " + content);
  389. _logger.log(
  390. Level.WARNING,
  391. "HTTP response message: " + httpResponse.getMessage());
  392. _logger.log(
  393. Level.WARNING,
  394. "HTTP response status code: " +
  395. httpResponse.getStatusCode());
  396. throw new Problem.ProblemException(Problem.toDTO(content));
  397. }
  398. else {
  399. _logger.fine("HTTP response content: " + content);
  400. _logger.fine(
  401. "HTTP response message: " + httpResponse.getMessage());
  402. _logger.fine(
  403. "HTTP response status code: " +
  404. httpResponse.getStatusCode());
  405. }
  406. try {
  407. return PortalInstanceSerDes.toDTO(content);
  408. }
  409. catch (Exception e) {
  410. _logger.log(
  411. Level.WARNING,
  412. "Unable to process HTTP response: " + content, e);
  413. throw new Problem.ProblemException(Problem.toDTO(content));
  414. }
  415. }
  416. public HttpInvoker.HttpResponse patchPortalInstanceHttpResponse(
  417. String portalInstanceId, PortalInstance portalInstance)
  418. throws Exception {
  419. HttpInvoker httpInvoker = HttpInvoker.newHttpInvoker();
  420. httpInvoker.body(portalInstance.toString(), "application/json");
  421. if (_builder._locale != null) {
  422. httpInvoker.header(
  423. "Accept-Language", _builder._locale.toLanguageTag());
  424. }
  425. for (Map.Entry<String, String> entry :
  426. _builder._headers.entrySet()) {
  427. httpInvoker.header(entry.getKey(), entry.getValue());
  428. }
  429. for (Map.Entry<String, String> entry :
  430. _builder._parameters.entrySet()) {
  431. httpInvoker.parameter(entry.getKey(), entry.getValue());
  432. }
  433. httpInvoker.httpMethod(HttpInvoker.HttpMethod.PATCH);
  434. httpInvoker.path(
  435. _builder._scheme + "://" + _builder._host + ":" +
  436. _builder._port + _builder._contextPath +
  437. "/o/headless-portal-instances/v1.0/portal-instances/{portalInstanceId}");
  438. httpInvoker.path("portalInstanceId", portalInstanceId);
  439. httpInvoker.userNameAndPassword(
  440. _builder._login + ":" + _builder._password);
  441. return httpInvoker.invoke();
  442. }
  443. public void putPortalInstanceActivate(String portalInstanceId)
  444. throws Exception {
  445. HttpInvoker.HttpResponse httpResponse =
  446. putPortalInstanceActivateHttpResponse(portalInstanceId);
  447. String content = httpResponse.getContent();
  448. if ((httpResponse.getStatusCode() / 100) != 2) {
  449. _logger.log(
  450. Level.WARNING,
  451. "Unable to process HTTP response content: " + content);
  452. _logger.log(
  453. Level.WARNING,
  454. "HTTP response message: " + httpResponse.getMessage());
  455. _logger.log(
  456. Level.WARNING,
  457. "HTTP response status code: " +
  458. httpResponse.getStatusCode());
  459. throw new Problem.ProblemException(Problem.toDTO(content));
  460. }
  461. else {
  462. _logger.fine("HTTP response content: " + content);
  463. _logger.fine(
  464. "HTTP response message: " + httpResponse.getMessage());
  465. _logger.fine(
  466. "HTTP response status code: " +
  467. httpResponse.getStatusCode());
  468. }
  469. try {
  470. return;
  471. }
  472. catch (Exception e) {
  473. _logger.log(
  474. Level.WARNING,
  475. "Unable to process HTTP response: " + content, e);
  476. throw new Problem.ProblemException(Problem.toDTO(content));
  477. }
  478. }
  479. public HttpInvoker.HttpResponse putPortalInstanceActivateHttpResponse(
  480. String portalInstanceId)
  481. throws Exception {
  482. HttpInvoker httpInvoker = HttpInvoker.newHttpInvoker();
  483. if (_builder._locale != null) {
  484. httpInvoker.header(
  485. "Accept-Language", _builder._locale.toLanguageTag());
  486. }
  487. for (Map.Entry<String, String> entry :
  488. _builder._headers.entrySet()) {
  489. httpInvoker.header(entry.getKey(), entry.getValue());
  490. }
  491. for (Map.Entry<String, String> entry :
  492. _builder._parameters.entrySet()) {
  493. httpInvoker.parameter(entry.getKey(), entry.getValue());
  494. }
  495. httpInvoker.httpMethod(HttpInvoker.HttpMethod.PUT);
  496. httpInvoker.path(
  497. _builder._scheme + "://" + _builder._host + ":" +
  498. _builder._port + _builder._contextPath +
  499. "/o/headless-portal-instances/v1.0/portal-instances/{portalInstanceId}/activate");
  500. httpInvoker.path("portalInstanceId", portalInstanceId);
  501. httpInvoker.userNameAndPassword(
  502. _builder._login + ":" + _builder._password);
  503. return httpInvoker.invoke();
  504. }
  505. public void putPortalInstanceDeactivate(String portalInstanceId)
  506. throws Exception {
  507. HttpInvoker.HttpResponse httpResponse =
  508. putPortalInstanceDeactivateHttpResponse(portalInstanceId);
  509. String content = httpResponse.getContent();
  510. if ((httpResponse.getStatusCode() / 100) != 2) {
  511. _logger.log(
  512. Level.WARNING,
  513. "Unable to process HTTP response content: " + content);
  514. _logger.log(
  515. Level.WARNING,
  516. "HTTP response message: " + httpResponse.getMessage());
  517. _logger.log(
  518. Level.WARNING,
  519. "HTTP response status code: " +
  520. httpResponse.getStatusCode());
  521. throw new Problem.ProblemException(Problem.toDTO(content));
  522. }
  523. else {
  524. _logger.fine("HTTP response content: " + content);
  525. _logger.fine(
  526. "HTTP response message: " + httpResponse.getMessage());
  527. _logger.fine(
  528. "HTTP response status code: " +
  529. httpResponse.getStatusCode());
  530. }
  531. try {
  532. return;
  533. }
  534. catch (Exception e) {
  535. _logger.log(
  536. Level.WARNING,
  537. "Unable to process HTTP response: " + content, e);
  538. throw new Problem.ProblemException(Problem.toDTO(content));
  539. }
  540. }
  541. public HttpInvoker.HttpResponse putPortalInstanceDeactivateHttpResponse(
  542. String portalInstanceId)
  543. throws Exception {
  544. HttpInvoker httpInvoker = HttpInvoker.newHttpInvoker();
  545. if (_builder._locale != null) {
  546. httpInvoker.header(
  547. "Accept-Language", _builder._locale.toLanguageTag());
  548. }
  549. for (Map.Entry<String, String> entry :
  550. _builder._headers.entrySet()) {
  551. httpInvoker.header(entry.getKey(), entry.getValue());
  552. }
  553. for (Map.Entry<String, String> entry :
  554. _builder._parameters.entrySet()) {
  555. httpInvoker.parameter(entry.getKey(), entry.getValue());
  556. }
  557. httpInvoker.httpMethod(HttpInvoker.HttpMethod.PUT);
  558. httpInvoker.path(
  559. _builder._scheme + "://" + _builder._host + ":" +
  560. _builder._port + _builder._contextPath +
  561. "/o/headless-portal-instances/v1.0/portal-instances/{portalInstanceId}/deactivate");
  562. httpInvoker.path("portalInstanceId", portalInstanceId);
  563. httpInvoker.userNameAndPassword(
  564. _builder._login + ":" + _builder._password);
  565. return httpInvoker.invoke();
  566. }
  567. private PortalInstanceResourceImpl(Builder builder) {
  568. _builder = builder;
  569. }
  570. private static final Logger _logger = Logger.getLogger(
  571. PortalInstanceResource.class.getName());
  572. private Builder _builder;
  573. }
  574. }