/modules/apps/headless/headless-delivery/headless-delivery-client/src/main/java/com/liferay/headless/delivery/client/resource/v1_0/StructuredContentFolderResource.java

https://github.com/danielreuther/liferay-portal · Java · 1700 lines · 1311 code · 372 blank · 17 comment · 129 complexity · 9ac4559e4a3a8233ba1cd4e28965d11c 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.delivery.client.resource.v1_0;
  15. import com.liferay.headless.delivery.client.dto.v1_0.StructuredContentFolder;
  16. import com.liferay.headless.delivery.client.http.HttpInvoker;
  17. import com.liferay.headless.delivery.client.pagination.Page;
  18. import com.liferay.headless.delivery.client.pagination.Pagination;
  19. import com.liferay.headless.delivery.client.permission.Permission;
  20. import com.liferay.headless.delivery.client.problem.Problem;
  21. import com.liferay.headless.delivery.client.serdes.v1_0.StructuredContentFolderSerDes;
  22. import java.util.LinkedHashMap;
  23. import java.util.List;
  24. import java.util.Locale;
  25. import java.util.Map;
  26. import java.util.logging.Level;
  27. import java.util.logging.Logger;
  28. import java.util.stream.Collectors;
  29. import java.util.stream.Stream;
  30. import javax.annotation.Generated;
  31. /**
  32. * @author Javier Gamarra
  33. * @generated
  34. */
  35. @Generated("")
  36. public interface StructuredContentFolderResource {
  37. public static Builder builder() {
  38. return new Builder();
  39. }
  40. public Page<StructuredContentFolder>
  41. getAssetLibraryStructuredContentFoldersPage(
  42. Long assetLibraryId, Boolean flatten, String search,
  43. List<String> aggregations, String filterString,
  44. Pagination pagination, String sortString)
  45. throws Exception;
  46. public HttpInvoker.HttpResponse
  47. getAssetLibraryStructuredContentFoldersPageHttpResponse(
  48. Long assetLibraryId, Boolean flatten, String search,
  49. List<String> aggregations, String filterString,
  50. Pagination pagination, String sortString)
  51. throws Exception;
  52. public StructuredContentFolder postAssetLibraryStructuredContentFolder(
  53. Long assetLibraryId,
  54. StructuredContentFolder structuredContentFolder)
  55. throws Exception;
  56. public HttpInvoker.HttpResponse
  57. postAssetLibraryStructuredContentFolderHttpResponse(
  58. Long assetLibraryId,
  59. StructuredContentFolder structuredContentFolder)
  60. throws Exception;
  61. public void postAssetLibraryStructuredContentFolderBatch(
  62. Long assetLibraryId, String callbackURL, Object object)
  63. throws Exception;
  64. public HttpInvoker.HttpResponse
  65. postAssetLibraryStructuredContentFolderBatchHttpResponse(
  66. Long assetLibraryId, String callbackURL, Object object)
  67. throws Exception;
  68. public void
  69. deleteAssetLibraryStructuredContentFolderByExternalReferenceCode(
  70. Long assetLibraryId, String externalReferenceCode)
  71. throws Exception;
  72. public HttpInvoker.HttpResponse
  73. deleteAssetLibraryStructuredContentFolderByExternalReferenceCodeHttpResponse(
  74. Long assetLibraryId, String externalReferenceCode)
  75. throws Exception;
  76. public StructuredContentFolder
  77. getAssetLibraryStructuredContentFolderByExternalReferenceCode(
  78. Long assetLibraryId, String externalReferenceCode)
  79. throws Exception;
  80. public HttpInvoker.HttpResponse
  81. getAssetLibraryStructuredContentFolderByExternalReferenceCodeHttpResponse(
  82. Long assetLibraryId, String externalReferenceCode)
  83. throws Exception;
  84. public StructuredContentFolder
  85. putAssetLibraryStructuredContentFolderByExternalReferenceCode(
  86. Long assetLibraryId, String externalReferenceCode,
  87. StructuredContentFolder structuredContentFolder)
  88. throws Exception;
  89. public HttpInvoker.HttpResponse
  90. putAssetLibraryStructuredContentFolderByExternalReferenceCodeHttpResponse(
  91. Long assetLibraryId, String externalReferenceCode,
  92. StructuredContentFolder structuredContentFolder)
  93. throws Exception;
  94. public Page<Permission>
  95. getAssetLibraryStructuredContentFolderPermissionsPage(
  96. Long assetLibraryId, String roleNames)
  97. throws Exception;
  98. public HttpInvoker.HttpResponse
  99. getAssetLibraryStructuredContentFolderPermissionsPageHttpResponse(
  100. Long assetLibraryId, String roleNames)
  101. throws Exception;
  102. public Page<Permission>
  103. putAssetLibraryStructuredContentFolderPermissionsPage(
  104. Long assetLibraryId, Permission[] permissions)
  105. throws Exception;
  106. public HttpInvoker.HttpResponse
  107. putAssetLibraryStructuredContentFolderPermissionsPageHttpResponse(
  108. Long assetLibraryId, Permission[] permissions)
  109. throws Exception;
  110. public Page<StructuredContentFolder> getSiteStructuredContentFoldersPage(
  111. Long siteId, Boolean flatten, String search,
  112. List<String> aggregations, String filterString,
  113. Pagination pagination, String sortString)
  114. throws Exception;
  115. public HttpInvoker.HttpResponse
  116. getSiteStructuredContentFoldersPageHttpResponse(
  117. Long siteId, Boolean flatten, String search,
  118. List<String> aggregations, String filterString,
  119. Pagination pagination, String sortString)
  120. throws Exception;
  121. public StructuredContentFolder postSiteStructuredContentFolder(
  122. Long siteId, StructuredContentFolder structuredContentFolder)
  123. throws Exception;
  124. public HttpInvoker.HttpResponse postSiteStructuredContentFolderHttpResponse(
  125. Long siteId, StructuredContentFolder structuredContentFolder)
  126. throws Exception;
  127. public void postSiteStructuredContentFolderBatch(
  128. Long siteId, String callbackURL, Object object)
  129. throws Exception;
  130. public HttpInvoker.HttpResponse
  131. postSiteStructuredContentFolderBatchHttpResponse(
  132. Long siteId, String callbackURL, Object object)
  133. throws Exception;
  134. public void deleteSiteStructuredContentFolderByExternalReferenceCode(
  135. Long siteId, String externalReferenceCode)
  136. throws Exception;
  137. public HttpInvoker.HttpResponse
  138. deleteSiteStructuredContentFolderByExternalReferenceCodeHttpResponse(
  139. Long siteId, String externalReferenceCode)
  140. throws Exception;
  141. public StructuredContentFolder
  142. getSiteStructuredContentFolderByExternalReferenceCode(
  143. Long siteId, String externalReferenceCode)
  144. throws Exception;
  145. public HttpInvoker.HttpResponse
  146. getSiteStructuredContentFolderByExternalReferenceCodeHttpResponse(
  147. Long siteId, String externalReferenceCode)
  148. throws Exception;
  149. public StructuredContentFolder
  150. putSiteStructuredContentFolderByExternalReferenceCode(
  151. Long siteId, String externalReferenceCode,
  152. StructuredContentFolder structuredContentFolder)
  153. throws Exception;
  154. public HttpInvoker.HttpResponse
  155. putSiteStructuredContentFolderByExternalReferenceCodeHttpResponse(
  156. Long siteId, String externalReferenceCode,
  157. StructuredContentFolder structuredContentFolder)
  158. throws Exception;
  159. public Page<Permission> getSiteStructuredContentFolderPermissionsPage(
  160. Long siteId, String roleNames)
  161. throws Exception;
  162. public HttpInvoker.HttpResponse
  163. getSiteStructuredContentFolderPermissionsPageHttpResponse(
  164. Long siteId, String roleNames)
  165. throws Exception;
  166. public Page<Permission> putSiteStructuredContentFolderPermissionsPage(
  167. Long siteId, Permission[] permissions)
  168. throws Exception;
  169. public HttpInvoker.HttpResponse
  170. putSiteStructuredContentFolderPermissionsPageHttpResponse(
  171. Long siteId, Permission[] permissions)
  172. throws Exception;
  173. public Page<Permission> getStructuredContentFolderPermissionsPage(
  174. Long structuredContentFolderId, String roleNames)
  175. throws Exception;
  176. public HttpInvoker.HttpResponse
  177. getStructuredContentFolderPermissionsPageHttpResponse(
  178. Long structuredContentFolderId, String roleNames)
  179. throws Exception;
  180. public Page<Permission> putStructuredContentFolderPermissionsPage(
  181. Long structuredContentFolderId, Permission[] permissions)
  182. throws Exception;
  183. public HttpInvoker.HttpResponse
  184. putStructuredContentFolderPermissionsPageHttpResponse(
  185. Long structuredContentFolderId, Permission[] permissions)
  186. throws Exception;
  187. public Page<StructuredContentFolder>
  188. getStructuredContentFolderStructuredContentFoldersPage(
  189. Long parentStructuredContentFolderId, String search,
  190. List<String> aggregations, String filterString,
  191. Pagination pagination, String sortString)
  192. throws Exception;
  193. public HttpInvoker.HttpResponse
  194. getStructuredContentFolderStructuredContentFoldersPageHttpResponse(
  195. Long parentStructuredContentFolderId, String search,
  196. List<String> aggregations, String filterString,
  197. Pagination pagination, String sortString)
  198. throws Exception;
  199. public StructuredContentFolder
  200. postStructuredContentFolderStructuredContentFolder(
  201. Long parentStructuredContentFolderId,
  202. StructuredContentFolder structuredContentFolder)
  203. throws Exception;
  204. public HttpInvoker.HttpResponse
  205. postStructuredContentFolderStructuredContentFolderHttpResponse(
  206. Long parentStructuredContentFolderId,
  207. StructuredContentFolder structuredContentFolder)
  208. throws Exception;
  209. public void deleteStructuredContentFolder(Long structuredContentFolderId)
  210. throws Exception;
  211. public HttpInvoker.HttpResponse deleteStructuredContentFolderHttpResponse(
  212. Long structuredContentFolderId)
  213. throws Exception;
  214. public void deleteStructuredContentFolderBatch(
  215. String callbackURL, Object object)
  216. throws Exception;
  217. public HttpInvoker.HttpResponse
  218. deleteStructuredContentFolderBatchHttpResponse(
  219. String callbackURL, Object object)
  220. throws Exception;
  221. public StructuredContentFolder getStructuredContentFolder(
  222. Long structuredContentFolderId)
  223. throws Exception;
  224. public HttpInvoker.HttpResponse getStructuredContentFolderHttpResponse(
  225. Long structuredContentFolderId)
  226. throws Exception;
  227. public StructuredContentFolder patchStructuredContentFolder(
  228. Long structuredContentFolderId,
  229. StructuredContentFolder structuredContentFolder)
  230. throws Exception;
  231. public HttpInvoker.HttpResponse patchStructuredContentFolderHttpResponse(
  232. Long structuredContentFolderId,
  233. StructuredContentFolder structuredContentFolder)
  234. throws Exception;
  235. public StructuredContentFolder putStructuredContentFolder(
  236. Long structuredContentFolderId,
  237. StructuredContentFolder structuredContentFolder)
  238. throws Exception;
  239. public HttpInvoker.HttpResponse putStructuredContentFolderHttpResponse(
  240. Long structuredContentFolderId,
  241. StructuredContentFolder structuredContentFolder)
  242. throws Exception;
  243. public void putStructuredContentFolderBatch(
  244. String callbackURL, Object object)
  245. throws Exception;
  246. public HttpInvoker.HttpResponse putStructuredContentFolderBatchHttpResponse(
  247. String callbackURL, Object object)
  248. throws Exception;
  249. public void putStructuredContentFolderSubscribe(
  250. Long structuredContentFolderId)
  251. throws Exception;
  252. public HttpInvoker.HttpResponse
  253. putStructuredContentFolderSubscribeHttpResponse(
  254. Long structuredContentFolderId)
  255. throws Exception;
  256. public void putStructuredContentFolderUnsubscribe(
  257. Long structuredContentFolderId)
  258. throws Exception;
  259. public HttpInvoker.HttpResponse
  260. putStructuredContentFolderUnsubscribeHttpResponse(
  261. Long structuredContentFolderId)
  262. throws Exception;
  263. public static class Builder {
  264. public Builder authentication(String login, String password) {
  265. _login = login;
  266. _password = password;
  267. return this;
  268. }
  269. public StructuredContentFolderResource build() {
  270. return new StructuredContentFolderResourceImpl(this);
  271. }
  272. public Builder contextPath(String contextPath) {
  273. _contextPath = contextPath;
  274. return this;
  275. }
  276. public Builder endpoint(String host, int port, String scheme) {
  277. _host = host;
  278. _port = port;
  279. _scheme = scheme;
  280. return this;
  281. }
  282. public Builder header(String key, String value) {
  283. _headers.put(key, value);
  284. return this;
  285. }
  286. public Builder locale(Locale locale) {
  287. _locale = locale;
  288. return this;
  289. }
  290. public Builder parameter(String key, String value) {
  291. _parameters.put(key, value);
  292. return this;
  293. }
  294. public Builder parameters(String... parameters) {
  295. if ((parameters.length % 2) != 0) {
  296. throw new IllegalArgumentException(
  297. "Parameters length is not an even number");
  298. }
  299. for (int i = 0; i < parameters.length; i += 2) {
  300. String parameterName = String.valueOf(parameters[i]);
  301. String parameterValue = String.valueOf(parameters[i + 1]);
  302. _parameters.put(parameterName, parameterValue);
  303. }
  304. return this;
  305. }
  306. private Builder() {
  307. }
  308. private String _contextPath = "";
  309. private Map<String, String> _headers = new LinkedHashMap<>();
  310. private String _host = "localhost";
  311. private Locale _locale;
  312. private String _login = "";
  313. private String _password = "";
  314. private Map<String, String> _parameters = new LinkedHashMap<>();
  315. private int _port = 8080;
  316. private String _scheme = "http";
  317. }
  318. public static class StructuredContentFolderResourceImpl
  319. implements StructuredContentFolderResource {
  320. public Page<StructuredContentFolder>
  321. getAssetLibraryStructuredContentFoldersPage(
  322. Long assetLibraryId, Boolean flatten, String search,
  323. List<String> aggregations, String filterString,
  324. Pagination pagination, String sortString)
  325. throws Exception {
  326. HttpInvoker.HttpResponse httpResponse =
  327. getAssetLibraryStructuredContentFoldersPageHttpResponse(
  328. assetLibraryId, flatten, search, aggregations, filterString,
  329. pagination, sortString);
  330. String content = httpResponse.getContent();
  331. if ((httpResponse.getStatusCode() / 100) != 2) {
  332. _logger.log(
  333. Level.WARNING,
  334. "Unable to process HTTP response content: " + content);
  335. _logger.log(
  336. Level.WARNING,
  337. "HTTP response message: " + httpResponse.getMessage());
  338. _logger.log(
  339. Level.WARNING,
  340. "HTTP response status code: " +
  341. httpResponse.getStatusCode());
  342. throw new Problem.ProblemException(Problem.toDTO(content));
  343. }
  344. else {
  345. _logger.fine("HTTP response content: " + content);
  346. _logger.fine(
  347. "HTTP response message: " + httpResponse.getMessage());
  348. _logger.fine(
  349. "HTTP response status code: " +
  350. httpResponse.getStatusCode());
  351. }
  352. try {
  353. return Page.of(content, StructuredContentFolderSerDes::toDTO);
  354. }
  355. catch (Exception e) {
  356. _logger.log(
  357. Level.WARNING,
  358. "Unable to process HTTP response: " + content, e);
  359. throw new Problem.ProblemException(Problem.toDTO(content));
  360. }
  361. }
  362. public HttpInvoker.HttpResponse
  363. getAssetLibraryStructuredContentFoldersPageHttpResponse(
  364. Long assetLibraryId, Boolean flatten, String search,
  365. List<String> aggregations, String filterString,
  366. Pagination pagination, String sortString)
  367. throws Exception {
  368. HttpInvoker httpInvoker = HttpInvoker.newHttpInvoker();
  369. if (_builder._locale != null) {
  370. httpInvoker.header(
  371. "Accept-Language", _builder._locale.toLanguageTag());
  372. }
  373. for (Map.Entry<String, String> entry :
  374. _builder._headers.entrySet()) {
  375. httpInvoker.header(entry.getKey(), entry.getValue());
  376. }
  377. for (Map.Entry<String, String> entry :
  378. _builder._parameters.entrySet()) {
  379. httpInvoker.parameter(entry.getKey(), entry.getValue());
  380. }
  381. httpInvoker.httpMethod(HttpInvoker.HttpMethod.GET);
  382. if (flatten != null) {
  383. httpInvoker.parameter("flatten", String.valueOf(flatten));
  384. }
  385. if (search != null) {
  386. httpInvoker.parameter("search", String.valueOf(search));
  387. }
  388. if (filterString != null) {
  389. httpInvoker.parameter("filter", filterString);
  390. }
  391. if (pagination != null) {
  392. httpInvoker.parameter(
  393. "page", String.valueOf(pagination.getPage()));
  394. httpInvoker.parameter(
  395. "pageSize", String.valueOf(pagination.getPageSize()));
  396. }
  397. if (sortString != null) {
  398. httpInvoker.parameter("sort", sortString);
  399. }
  400. httpInvoker.path(
  401. _builder._scheme + "://" + _builder._host + ":" +
  402. _builder._port + _builder._contextPath +
  403. "/o/headless-delivery/v1.0/asset-libraries/{assetLibraryId}/structured-content-folders");
  404. httpInvoker.path("assetLibraryId", assetLibraryId);
  405. httpInvoker.userNameAndPassword(
  406. _builder._login + ":" + _builder._password);
  407. return httpInvoker.invoke();
  408. }
  409. public StructuredContentFolder postAssetLibraryStructuredContentFolder(
  410. Long assetLibraryId,
  411. StructuredContentFolder structuredContentFolder)
  412. throws Exception {
  413. HttpInvoker.HttpResponse httpResponse =
  414. postAssetLibraryStructuredContentFolderHttpResponse(
  415. assetLibraryId, structuredContentFolder);
  416. String content = httpResponse.getContent();
  417. if ((httpResponse.getStatusCode() / 100) != 2) {
  418. _logger.log(
  419. Level.WARNING,
  420. "Unable to process HTTP response content: " + content);
  421. _logger.log(
  422. Level.WARNING,
  423. "HTTP response message: " + httpResponse.getMessage());
  424. _logger.log(
  425. Level.WARNING,
  426. "HTTP response status code: " +
  427. httpResponse.getStatusCode());
  428. throw new Problem.ProblemException(Problem.toDTO(content));
  429. }
  430. else {
  431. _logger.fine("HTTP response content: " + content);
  432. _logger.fine(
  433. "HTTP response message: " + httpResponse.getMessage());
  434. _logger.fine(
  435. "HTTP response status code: " +
  436. httpResponse.getStatusCode());
  437. }
  438. try {
  439. return StructuredContentFolderSerDes.toDTO(content);
  440. }
  441. catch (Exception e) {
  442. _logger.log(
  443. Level.WARNING,
  444. "Unable to process HTTP response: " + content, e);
  445. throw new Problem.ProblemException(Problem.toDTO(content));
  446. }
  447. }
  448. public HttpInvoker.HttpResponse
  449. postAssetLibraryStructuredContentFolderHttpResponse(
  450. Long assetLibraryId,
  451. StructuredContentFolder structuredContentFolder)
  452. throws Exception {
  453. HttpInvoker httpInvoker = HttpInvoker.newHttpInvoker();
  454. httpInvoker.body(
  455. structuredContentFolder.toString(), "application/json");
  456. if (_builder._locale != null) {
  457. httpInvoker.header(
  458. "Accept-Language", _builder._locale.toLanguageTag());
  459. }
  460. for (Map.Entry<String, String> entry :
  461. _builder._headers.entrySet()) {
  462. httpInvoker.header(entry.getKey(), entry.getValue());
  463. }
  464. for (Map.Entry<String, String> entry :
  465. _builder._parameters.entrySet()) {
  466. httpInvoker.parameter(entry.getKey(), entry.getValue());
  467. }
  468. httpInvoker.httpMethod(HttpInvoker.HttpMethod.POST);
  469. httpInvoker.path(
  470. _builder._scheme + "://" + _builder._host + ":" +
  471. _builder._port + _builder._contextPath +
  472. "/o/headless-delivery/v1.0/asset-libraries/{assetLibraryId}/structured-content-folders");
  473. httpInvoker.path("assetLibraryId", assetLibraryId);
  474. httpInvoker.userNameAndPassword(
  475. _builder._login + ":" + _builder._password);
  476. return httpInvoker.invoke();
  477. }
  478. public void postAssetLibraryStructuredContentFolderBatch(
  479. Long assetLibraryId, String callbackURL, Object object)
  480. throws Exception {
  481. HttpInvoker.HttpResponse httpResponse =
  482. postAssetLibraryStructuredContentFolderBatchHttpResponse(
  483. assetLibraryId, callbackURL, object);
  484. String content = httpResponse.getContent();
  485. if ((httpResponse.getStatusCode() / 100) != 2) {
  486. _logger.log(
  487. Level.WARNING,
  488. "Unable to process HTTP response content: " + content);
  489. _logger.log(
  490. Level.WARNING,
  491. "HTTP response message: " + httpResponse.getMessage());
  492. _logger.log(
  493. Level.WARNING,
  494. "HTTP response status code: " +
  495. httpResponse.getStatusCode());
  496. throw new Problem.ProblemException(Problem.toDTO(content));
  497. }
  498. else {
  499. _logger.fine("HTTP response content: " + content);
  500. _logger.fine(
  501. "HTTP response message: " + httpResponse.getMessage());
  502. _logger.fine(
  503. "HTTP response status code: " +
  504. httpResponse.getStatusCode());
  505. }
  506. }
  507. public HttpInvoker.HttpResponse
  508. postAssetLibraryStructuredContentFolderBatchHttpResponse(
  509. Long assetLibraryId, String callbackURL, Object object)
  510. throws Exception {
  511. HttpInvoker httpInvoker = HttpInvoker.newHttpInvoker();
  512. httpInvoker.body(object.toString(), "application/json");
  513. if (_builder._locale != null) {
  514. httpInvoker.header(
  515. "Accept-Language", _builder._locale.toLanguageTag());
  516. }
  517. for (Map.Entry<String, String> entry :
  518. _builder._headers.entrySet()) {
  519. httpInvoker.header(entry.getKey(), entry.getValue());
  520. }
  521. for (Map.Entry<String, String> entry :
  522. _builder._parameters.entrySet()) {
  523. httpInvoker.parameter(entry.getKey(), entry.getValue());
  524. }
  525. httpInvoker.httpMethod(HttpInvoker.HttpMethod.POST);
  526. if (callbackURL != null) {
  527. httpInvoker.parameter(
  528. "callbackURL", String.valueOf(callbackURL));
  529. }
  530. httpInvoker.path(
  531. _builder._scheme + "://" + _builder._host + ":" +
  532. _builder._port + _builder._contextPath +
  533. "/o/headless-delivery/v1.0/asset-libraries/{assetLibraryId}/structured-content-folders/batch");
  534. httpInvoker.path("assetLibraryId", assetLibraryId);
  535. httpInvoker.userNameAndPassword(
  536. _builder._login + ":" + _builder._password);
  537. return httpInvoker.invoke();
  538. }
  539. public void
  540. deleteAssetLibraryStructuredContentFolderByExternalReferenceCode(
  541. Long assetLibraryId, String externalReferenceCode)
  542. throws Exception {
  543. HttpInvoker.HttpResponse httpResponse =
  544. deleteAssetLibraryStructuredContentFolderByExternalReferenceCodeHttpResponse(
  545. assetLibraryId, externalReferenceCode);
  546. String content = httpResponse.getContent();
  547. if ((httpResponse.getStatusCode() / 100) != 2) {
  548. _logger.log(
  549. Level.WARNING,
  550. "Unable to process HTTP response content: " + content);
  551. _logger.log(
  552. Level.WARNING,
  553. "HTTP response message: " + httpResponse.getMessage());
  554. _logger.log(
  555. Level.WARNING,
  556. "HTTP response status code: " +
  557. httpResponse.getStatusCode());
  558. throw new Problem.ProblemException(Problem.toDTO(content));
  559. }
  560. else {
  561. _logger.fine("HTTP response content: " + content);
  562. _logger.fine(
  563. "HTTP response message: " + httpResponse.getMessage());
  564. _logger.fine(
  565. "HTTP response status code: " +
  566. httpResponse.getStatusCode());
  567. }
  568. try {
  569. return;
  570. }
  571. catch (Exception e) {
  572. _logger.log(
  573. Level.WARNING,
  574. "Unable to process HTTP response: " + content, e);
  575. throw new Problem.ProblemException(Problem.toDTO(content));
  576. }
  577. }
  578. public HttpInvoker.HttpResponse
  579. deleteAssetLibraryStructuredContentFolderByExternalReferenceCodeHttpResponse(
  580. Long assetLibraryId, String externalReferenceCode)
  581. throws Exception {
  582. HttpInvoker httpInvoker = HttpInvoker.newHttpInvoker();
  583. if (_builder._locale != null) {
  584. httpInvoker.header(
  585. "Accept-Language", _builder._locale.toLanguageTag());
  586. }
  587. for (Map.Entry<String, String> entry :
  588. _builder._headers.entrySet()) {
  589. httpInvoker.header(entry.getKey(), entry.getValue());
  590. }
  591. for (Map.Entry<String, String> entry :
  592. _builder._parameters.entrySet()) {
  593. httpInvoker.parameter(entry.getKey(), entry.getValue());
  594. }
  595. httpInvoker.httpMethod(HttpInvoker.HttpMethod.DELETE);
  596. httpInvoker.path(
  597. _builder._scheme + "://" + _builder._host + ":" +
  598. _builder._port + _builder._contextPath +
  599. "/o/headless-delivery/v1.0/asset-libraries/{assetLibraryId}/structured-content-folders/by-external-reference-code/{externalReferenceCode}");
  600. httpInvoker.path("assetLibraryId", assetLibraryId);
  601. httpInvoker.path("externalReferenceCode", externalReferenceCode);
  602. httpInvoker.userNameAndPassword(
  603. _builder._login + ":" + _builder._password);
  604. return httpInvoker.invoke();
  605. }
  606. public StructuredContentFolder
  607. getAssetLibraryStructuredContentFolderByExternalReferenceCode(
  608. Long assetLibraryId, String externalReferenceCode)
  609. throws Exception {
  610. HttpInvoker.HttpResponse httpResponse =
  611. getAssetLibraryStructuredContentFolderByExternalReferenceCodeHttpResponse(
  612. assetLibraryId, externalReferenceCode);
  613. String content = httpResponse.getContent();
  614. if ((httpResponse.getStatusCode() / 100) != 2) {
  615. _logger.log(
  616. Level.WARNING,
  617. "Unable to process HTTP response content: " + content);
  618. _logger.log(
  619. Level.WARNING,
  620. "HTTP response message: " + httpResponse.getMessage());
  621. _logger.log(
  622. Level.WARNING,
  623. "HTTP response status code: " +
  624. httpResponse.getStatusCode());
  625. throw new Problem.ProblemException(Problem.toDTO(content));
  626. }
  627. else {
  628. _logger.fine("HTTP response content: " + content);
  629. _logger.fine(
  630. "HTTP response message: " + httpResponse.getMessage());
  631. _logger.fine(
  632. "HTTP response status code: " +
  633. httpResponse.getStatusCode());
  634. }
  635. try {
  636. return StructuredContentFolderSerDes.toDTO(content);
  637. }
  638. catch (Exception e) {
  639. _logger.log(
  640. Level.WARNING,
  641. "Unable to process HTTP response: " + content, e);
  642. throw new Problem.ProblemException(Problem.toDTO(content));
  643. }
  644. }
  645. public HttpInvoker.HttpResponse
  646. getAssetLibraryStructuredContentFolderByExternalReferenceCodeHttpResponse(
  647. Long assetLibraryId, String externalReferenceCode)
  648. throws Exception {
  649. HttpInvoker httpInvoker = HttpInvoker.newHttpInvoker();
  650. if (_builder._locale != null) {
  651. httpInvoker.header(
  652. "Accept-Language", _builder._locale.toLanguageTag());
  653. }
  654. for (Map.Entry<String, String> entry :
  655. _builder._headers.entrySet()) {
  656. httpInvoker.header(entry.getKey(), entry.getValue());
  657. }
  658. for (Map.Entry<String, String> entry :
  659. _builder._parameters.entrySet()) {
  660. httpInvoker.parameter(entry.getKey(), entry.getValue());
  661. }
  662. httpInvoker.httpMethod(HttpInvoker.HttpMethod.GET);
  663. httpInvoker.path(
  664. _builder._scheme + "://" + _builder._host + ":" +
  665. _builder._port + _builder._contextPath +
  666. "/o/headless-delivery/v1.0/asset-libraries/{assetLibraryId}/structured-content-folders/by-external-reference-code/{externalReferenceCode}");
  667. httpInvoker.path("assetLibraryId", assetLibraryId);
  668. httpInvoker.path("externalReferenceCode", externalReferenceCode);
  669. httpInvoker.userNameAndPassword(
  670. _builder._login + ":" + _builder._password);
  671. return httpInvoker.invoke();
  672. }
  673. public StructuredContentFolder
  674. putAssetLibraryStructuredContentFolderByExternalReferenceCode(
  675. Long assetLibraryId, String externalReferenceCode,
  676. StructuredContentFolder structuredContentFolder)
  677. throws Exception {
  678. HttpInvoker.HttpResponse httpResponse =
  679. putAssetLibraryStructuredContentFolderByExternalReferenceCodeHttpResponse(
  680. assetLibraryId, externalReferenceCode,
  681. structuredContentFolder);
  682. String content = httpResponse.getContent();
  683. if ((httpResponse.getStatusCode() / 100) != 2) {
  684. _logger.log(
  685. Level.WARNING,
  686. "Unable to process HTTP response content: " + content);
  687. _logger.log(
  688. Level.WARNING,
  689. "HTTP response message: " + httpResponse.getMessage());
  690. _logger.log(
  691. Level.WARNING,
  692. "HTTP response status code: " +
  693. httpResponse.getStatusCode());
  694. throw new Problem.ProblemException(Problem.toDTO(content));
  695. }
  696. else {
  697. _logger.fine("HTTP response content: " + content);
  698. _logger.fine(
  699. "HTTP response message: " + httpResponse.getMessage());
  700. _logger.fine(
  701. "HTTP response status code: " +
  702. httpResponse.getStatusCode());
  703. }
  704. try {
  705. return StructuredContentFolderSerDes.toDTO(content);
  706. }
  707. catch (Exception e) {
  708. _logger.log(
  709. Level.WARNING,
  710. "Unable to process HTTP response: " + content, e);
  711. throw new Problem.ProblemException(Problem.toDTO(content));
  712. }
  713. }
  714. public HttpInvoker.HttpResponse
  715. putAssetLibraryStructuredContentFolderByExternalReferenceCodeHttpResponse(
  716. Long assetLibraryId, String externalReferenceCode,
  717. StructuredContentFolder structuredContentFolder)
  718. throws Exception {
  719. HttpInvoker httpInvoker = HttpInvoker.newHttpInvoker();
  720. httpInvoker.body(
  721. structuredContentFolder.toString(), "application/json");
  722. if (_builder._locale != null) {
  723. httpInvoker.header(
  724. "Accept-Language", _builder._locale.toLanguageTag());
  725. }
  726. for (Map.Entry<String, String> entry :
  727. _builder._headers.entrySet()) {
  728. httpInvoker.header(entry.getKey(), entry.getValue());
  729. }
  730. for (Map.Entry<String, String> entry :
  731. _builder._parameters.entrySet()) {
  732. httpInvoker.parameter(entry.getKey(), entry.getValue());
  733. }
  734. httpInvoker.httpMethod(HttpInvoker.HttpMethod.PUT);
  735. httpInvoker.path(
  736. _builder._scheme + "://" + _builder._host + ":" +
  737. _builder._port + _builder._contextPath +
  738. "/o/headless-delivery/v1.0/asset-libraries/{assetLibraryId}/structured-content-folders/by-external-reference-code/{externalReferenceCode}");
  739. httpInvoker.path("assetLibraryId", assetLibraryId);
  740. httpInvoker.path("externalReferenceCode", externalReferenceCode);
  741. httpInvoker.userNameAndPassword(
  742. _builder._login + ":" + _builder._password);
  743. return httpInvoker.invoke();
  744. }
  745. public Page<Permission>
  746. getAssetLibraryStructuredContentFolderPermissionsPage(
  747. Long assetLibraryId, String roleNames)
  748. throws Exception {
  749. HttpInvoker.HttpResponse httpResponse =
  750. getAssetLibraryStructuredContentFolderPermissionsPageHttpResponse(
  751. assetLibraryId, roleNames);
  752. String content = httpResponse.getContent();
  753. if ((httpResponse.getStatusCode() / 100) != 2) {
  754. _logger.log(
  755. Level.WARNING,
  756. "Unable to process HTTP response content: " + content);
  757. _logger.log(
  758. Level.WARNING,
  759. "HTTP response message: " + httpResponse.getMessage());
  760. _logger.log(
  761. Level.WARNING,
  762. "HTTP response status code: " +
  763. httpResponse.getStatusCode());
  764. throw new Problem.ProblemException(Problem.toDTO(content));
  765. }
  766. else {
  767. _logger.fine("HTTP response content: " + content);
  768. _logger.fine(
  769. "HTTP response message: " + httpResponse.getMessage());
  770. _logger.fine(
  771. "HTTP response status code: " +
  772. httpResponse.getStatusCode());
  773. }
  774. try {
  775. return Page.of(content, Permission::toDTO);
  776. }
  777. catch (Exception e) {
  778. _logger.log(
  779. Level.WARNING,
  780. "Unable to process HTTP response: " + content, e);
  781. throw new Problem.ProblemException(Problem.toDTO(content));
  782. }
  783. }
  784. public HttpInvoker.HttpResponse
  785. getAssetLibraryStructuredContentFolderPermissionsPageHttpResponse(
  786. Long assetLibraryId, String roleNames)
  787. throws Exception {
  788. HttpInvoker httpInvoker = HttpInvoker.newHttpInvoker();
  789. if (_builder._locale != null) {
  790. httpInvoker.header(
  791. "Accept-Language", _builder._locale.toLanguageTag());
  792. }
  793. for (Map.Entry<String, String> entry :
  794. _builder._headers.entrySet()) {
  795. httpInvoker.header(entry.getKey(), entry.getValue());
  796. }
  797. for (Map.Entry<String, String> entry :
  798. _builder._parameters.entrySet()) {
  799. httpInvoker.parameter(entry.getKey(), entry.getValue());
  800. }
  801. httpInvoker.httpMethod(HttpInvoker.HttpMethod.GET);
  802. if (roleNames != null) {
  803. httpInvoker.parameter("roleNames", String.valueOf(roleNames));
  804. }
  805. httpInvoker.path(
  806. _builder._scheme + "://" + _builder._host + ":" +
  807. _builder._port + _builder._contextPath +
  808. "/o/headless-delivery/v1.0/asset-libraries/{assetLibraryId}/structured-content-folders/permissions");
  809. httpInvoker.path("assetLibraryId", assetLibraryId);
  810. httpInvoker.userNameAndPassword(
  811. _builder._login + ":" + _builder._password);
  812. return httpInvoker.invoke();
  813. }
  814. public Page<Permission>
  815. putAssetLibraryStructuredContentFolderPermissionsPage(
  816. Long assetLibraryId, Permission[] permissions)
  817. throws Exception {
  818. HttpInvoker.HttpResponse httpResponse =
  819. putAssetLibraryStructuredContentFolderPermissionsPageHttpResponse(
  820. assetLibraryId, permissions);
  821. String content = httpResponse.getContent();
  822. if ((httpResponse.getStatusCode() / 100) != 2) {
  823. _logger.log(
  824. Level.WARNING,
  825. "Unable to process HTTP response content: " + content);
  826. _logger.log(
  827. Level.WARNING,
  828. "HTTP response message: " + httpResponse.getMessage());
  829. _logger.log(
  830. Level.WARNING,
  831. "HTTP response status code: " +
  832. httpResponse.getStatusCode());
  833. throw new Problem.ProblemException(Problem.toDTO(content));
  834. }
  835. else {
  836. _logger.fine("HTTP response content: " + content);
  837. _logger.fine(
  838. "HTTP response message: " + httpResponse.getMessage());
  839. _logger.fine(
  840. "HTTP response status code: " +
  841. httpResponse.getStatusCode());
  842. }
  843. try {
  844. return Page.of(content, Permission::toDTO);
  845. }
  846. catch (Exception e) {
  847. _logger.log(
  848. Level.WARNING,
  849. "Unable to process HTTP response: " + content, e);
  850. throw new Problem.ProblemException(Problem.toDTO(content));
  851. }
  852. }
  853. public HttpInvoker.HttpResponse
  854. putAssetLibraryStructuredContentFolderPermissionsPageHttpResponse(
  855. Long assetLibraryId, Permission[] permissions)
  856. throws Exception {
  857. HttpInvoker httpInvoker = HttpInvoker.newHttpInvoker();
  858. httpInvoker.body(
  859. Stream.of(
  860. permissions
  861. ).map(
  862. value -> String.valueOf(value)
  863. ).collect(
  864. Collectors.toList()
  865. ).toString(),
  866. "application/json");
  867. if (_builder._locale != null) {
  868. httpInvoker.header(
  869. "Accept-Language", _builder._locale.toLanguageTag());
  870. }
  871. for (Map.Entry<String, String> entry :
  872. _builder._headers.entrySet()) {
  873. httpInvoker.header(entry.getKey(), entry.getValue());
  874. }
  875. for (Map.Entry<String, String> entry :
  876. _builder._parameters.entrySet()) {
  877. httpInvoker.parameter(entry.getKey(), entry.getValue());
  878. }
  879. httpInvoker.httpMethod(HttpInvoker.HttpMethod.PUT);
  880. httpInvoker.path(
  881. _builder._scheme + "://" + _builder._host + ":" +
  882. _builder._port + _builder._contextPath +
  883. "/o/headless-delivery/v1.0/asset-libraries/{assetLibraryId}/structured-content-folders/permissions");
  884. httpInvoker.path("assetLibraryId", assetLibraryId);
  885. httpInvoker.userNameAndPassword(
  886. _builder._login + ":" + _builder._password);
  887. return httpInvoker.invoke();
  888. }
  889. public Page<StructuredContentFolder>
  890. getSiteStructuredContentFoldersPage(
  891. Long siteId, Boolean flatten, String search,
  892. List<String> aggregations, String filterString,
  893. Pagination pagination, String sortString)
  894. throws Exception {
  895. HttpInvoker.HttpResponse httpResponse =
  896. getSiteStructuredContentFoldersPageHttpResponse(
  897. siteId, flatten, search, aggregations, filterString,
  898. pagination, sortString);
  899. String content = httpResponse.getContent();
  900. if ((httpResponse.getStatusCode() / 100) != 2) {
  901. _logger.log(
  902. Level.WARNING,
  903. "Unable to process HTTP response content: " + content);
  904. _logger.log(
  905. Level.WARNING,
  906. "HTTP response message: " + httpResponse.getMessage());
  907. _logger.log(
  908. Level.WARNING,
  909. "HTTP response status code: " +
  910. httpResponse.getStatusCode());
  911. throw new Problem.ProblemException(Problem.toDTO(content));
  912. }
  913. else {
  914. _logger.fine("HTTP response content: " + content);
  915. _logger.fine(
  916. "HTTP response message: " + httpResponse.getMessage());
  917. _logger.fine(
  918. "HTTP response status code: " +
  919. httpResponse.getStatusCode());
  920. }
  921. try {
  922. return Page.of(content, StructuredContentFolderSerDes::toDTO);
  923. }
  924. catch (Exception e) {
  925. _logger.log(
  926. Level.WARNING,
  927. "Unable to process HTTP response: " + content, e);
  928. throw new Problem.ProblemException(Problem.toDTO(content));
  929. }
  930. }
  931. public HttpInvoker.HttpResponse
  932. getSiteStructuredContentFoldersPageHttpResponse(
  933. Long siteId, Boolean flatten, String search,
  934. List<String> aggregations, String filterString,
  935. Pagination pagination, String sortString)
  936. throws Exception {
  937. HttpInvoker httpInvoker = HttpInvoker.newHttpInvoker();
  938. if (_builder._locale != null) {
  939. httpInvoker.header(
  940. "Accept-Language", _builder._locale.toLanguageTag());
  941. }
  942. for (Map.Entry<String, String> entry :
  943. _builder._headers.entrySet()) {
  944. httpInvoker.header(entry.getKey(), entry.getValue());
  945. }
  946. for (Map.Entry<String, String> entry :
  947. _builder._parameters.entrySet()) {
  948. httpInvoker.parameter(entry.getKey(), entry.getValue());
  949. }
  950. httpInvoker.httpMethod(HttpInvoker.HttpMethod.GET);
  951. if (flatten != null) {
  952. httpInvoker.parameter("flatten", String.valueOf(flatten));
  953. }
  954. if (search != null) {
  955. httpInvoker.parameter("search", String.valueOf(search));
  956. }
  957. if (filterString != null) {
  958. httpInvoker.parameter("filter", filterString);
  959. }
  960. if (pagination != null) {
  961. httpInvoker.parameter(
  962. "page", String.valueOf(pagination.getPage()));
  963. httpInvoker.parameter(
  964. "pageSize", String.valueOf(pagination.getPageSize()));
  965. }
  966. if (sortString != null) {
  967. httpInvoker.parameter("sort", sortString);
  968. }
  969. httpInvoker.path(
  970. _builder._scheme + "://" + _builder._host + ":" +
  971. _builder._port + _builder._contextPath +
  972. "/o/headless-delivery/v1.0/sites/{siteId}/structured-content-folders");
  973. httpInvoker.path("siteId", siteId);
  974. httpInvoker.userNameAndPassword(
  975. _builder._login + ":" + _builder._password);
  976. return httpInvoker.invoke();
  977. }
  978. public StructuredContentFolder postSiteStructuredContentFolder(
  979. Long siteId, StructuredContentFolder structuredContentFolder)
  980. throws Exception {
  981. HttpInvoker.HttpResponse httpResponse =
  982. postSiteStructuredContentFolderHttpResponse(
  983. siteId, structuredContentFolder);
  984. String content = httpResponse.getContent();
  985. if ((httpResponse.getStatusCode() / 100) != 2) {
  986. _logger.log(
  987. Level.WARNING,
  988. "Unable to process HTTP response content: " + content);
  989. _logger.log(
  990. Level.WARNING,
  991. "HTTP response message: " + httpResponse.getMessage());
  992. _logger.log(
  993. Level.WARNING,
  994. "HTTP response status code: " +
  995. httpResponse.getStatusCode());
  996. throw new Problem.ProblemException(Problem.toDTO(content));
  997. }
  998. else {
  999. _logger.fine("HTTP response content: " + content);
  1000. _logger.fine(
  1001. "HTTP response message: " + httpResponse.getMessage());
  1002. _logger.fine(
  1003. "HTTP response status code: " +
  1004. httpResponse.getStatusCode());
  1005. }
  1006. try {
  1007. return StructuredContentFolderSerDes.toDTO(content);
  1008. }
  1009. catch (Exception e) {
  1010. _logger.log(
  1011. Level.WARNING,
  1012. "Unable to process HTTP response: " + content, e);
  1013. throw new Problem.ProblemException(Problem.toDTO(content));
  1014. }
  1015. }
  1016. public HttpInvoker.HttpResponse
  1017. postSiteStructuredContentFolderHttpResponse(
  1018. Long siteId,
  1019. StructuredContentFolder structuredContentFolder)
  1020. throws Exception {
  1021. HttpInvoker httpInvoker = HttpInvoker.newHttpInvoker();
  1022. httpInvoker.body(
  1023. structuredContentFolder.toString(), "application/json");
  1024. if (_builder._locale != null) {
  1025. httpInvoker.header(
  1026. "Accept-Language", _builder._locale.toLanguageTag());
  1027. }
  1028. for (Map.Entry<String, String> entry :
  1029. _builder._headers.entrySet()) {
  1030. httpInvoker.header(entry.getKey(), entry.getValue());
  1031. }
  1032. for (Map.Entry<String, String> entry :
  1033. _builder._parameters.entrySet()) {
  1034. httpInvoker.parameter(entry.getKey(), entry.getValue());
  1035. }
  1036. httpInvoker.httpMethod(HttpInvoker.HttpMethod.POST);
  1037. httpInvoker.path(
  1038. _builder._scheme + "://" + _builder._host + ":" +
  1039. _builder._port + _builder._contextPath +
  1040. "/o/headless-delivery/v1.0/sites/{siteId}/structured-content-folders");
  1041. httpInvoker.path("siteId", siteId);
  1042. httpInvoker.userNameAndPassword(
  1043. _builder._login + ":" + _builder._password);
  1044. return httpInvoker.invoke();
  1045. }
  1046. public void postSiteStructuredContentFolderBatch(
  1047. Long siteId, String callbackURL, Object object)
  1048. throws Exception {
  1049. HttpInvoker.HttpResponse httpResponse =
  1050. postSiteStructuredContentFolderBatchHttpResponse(
  1051. siteId, callbackURL, object);
  1052. String content = httpResponse.getContent();
  1053. if ((httpResponse.getStatusCode() / 100) != 2) {
  1054. _logger.log(
  1055. Level.WARNING,
  1056. "Unable to process HTTP response content: " + content);
  1057. _logger.log(
  1058. Level.WARNING,
  1059. "HTTP response message: " + httpResponse.getMessage());
  1060. _logger.log(
  1061. Level.WARNING,
  1062. "HTTP response status code: " +
  1063. httpResponse.getStatusCode());
  1064. throw new Problem.ProblemException(Problem.toDTO(content));
  1065. }
  1066. else {
  1067. _logger.fine("HTTP response content: " + content);
  1068. _logger.fine(
  1069. "HTTP response message: " + httpResponse.getMessage());
  1070. _logger.fine(
  1071. "HTTP response status code: " +
  1072. httpResponse.getStatusCode());
  1073. }
  1074. }
  1075. public HttpInvoker.HttpResponse
  1076. postSiteStructuredContentFolderBatchHttpResponse(
  1077. Long siteId, String callbackURL, Object object)
  1078. throws Exception {
  1079. HttpInvoker httpInvoker = HttpInvoker.newHttpInvoker();
  1080. httpInvoker.body(object.toString(), "application/json");
  1081. if (_builder._locale != null) {
  1082. httpInvoker.header(
  1083. "Accept-Language", _builder._locale.toLanguageTag());
  1084. }
  1085. for (Map.Entry<String, String> entry :
  1086. _builder._headers.entrySet()) {
  1087. httpInvoker.header(entry.getKey(), entry.getValue());
  1088. }
  1089. for (Map.Entry<String, String> entry :
  1090. _builder._parameters.entrySet()) {
  1091. httpInvoker.parameter(entry.getKey(), entry.getValue());
  1092. }
  1093. httpInvoker.httpMethod(HttpInvoker.HttpMethod.POST);
  1094. if (callbackURL != null) {
  1095. httpInvoker.parameter(
  1096. "callbackURL", String.valueOf(callbackURL));
  1097. }
  1098. httpInvoker.path(
  1099. _builder._scheme + "://" + _builder._host + ":" +
  1100. _builder._port + _builder._contextPath +
  1101. "/o/headless-delivery/v1.0/sites/{siteId}/structured-content-folders/batch");
  1102. httpInvoker.path("siteId", siteId);
  1103. httpInvoker.userNameAndPassword(
  1104. _builder._login + ":" + _builder._password);
  1105. return httpInvoker.invoke();
  1106. }
  1107. public void deleteSiteStructuredContentFolderByExternalReferenceCode(
  1108. Long siteId, String externalReferenceCode)
  1109. throws Exception {
  1110. HttpInvoker.HttpResponse httpResponse =
  1111. deleteSiteStructuredContentFolderByExternalReferenceCodeHttpResponse(
  1112. siteId, externalReferenceCode);
  1113. String content = httpResponse.getContent();
  1114. if ((httpResponse.getStatusCode() / 100) != 2) {
  1115. _logger.log(
  1116. Level.WARNING,
  1117. "Unable to process HTTP response content: " + content);
  1118. _logger.log(
  1119. Level.WARNING,
  1120. "HTTP response message: " + httpResponse.getMessage());
  1121. _logger.log(
  1122. Level.WARNING,
  1123. "HTTP response status code: " +
  1124. httpResponse.getStatusCode());
  1125. throw new Problem.ProblemException(Problem.toDTO(content));
  1126. }
  1127. else {
  1128. _logger.fine("HTTP response content: " + content);
  1129. _logger.fine(
  1130. "HTTP response message: " + httpResponse.getMessage());
  1131. _logger.fine(
  1132. "HTTP response status code: " +
  1133. httpResponse.getStatusCode());
  1134. }
  1135. try {
  1136. return;
  1137. }
  1138. catch (Exception e) {
  1139. _logger.log(
  1140. Level.WARNING,
  1141. "Unable to process HTTP response: " + content, e);
  1142. throw new Problem.ProblemException(Problem.toDTO(content));
  1143. }
  1144. }
  1145. public HttpInvoker.HttpResponse
  1146. deleteSiteStructuredContentFolderByExternalReferenceCodeHttpResponse(
  1147. Long siteId, String externalReferenceCode)
  1148. throws Exception {
  1149. HttpInvoker httpInvoker = HttpInvoker.newHttpInvoker();
  1150. if (_builder._locale != null) {
  1151. httpInvoker.header(
  1152. "Accept-Language", _builder._locale.toLanguageTag());
  1153. }
  1154. for (Map.Entry<String, String> entry :
  1155. _builder._headers.entrySet()) {
  1156. httpInvoker.header(entry.getKey(), entry.getValue());
  1157. }
  1158. for (Map.Entry<String, String> entry :
  1159. _builder._parameters.entrySet()) {
  1160. httpInvoker.parameter(entry.getKey(), entry.getValue());
  1161. }
  1162. httpInvoker.httpMethod(HttpInvoker.HttpMethod.DELETE);
  1163. httpInvoker.path(
  1164. _builder._scheme + "://" + _builder._host + ":" +
  1165. _builder._port + _builder._contextPath +
  1166. "/o/headless-delivery/v1.0/sites/{siteId}/structured-content-folders/by-external-reference-code/{externalReferenceCode}");
  1167. httpInvoker.path("siteId", siteId);
  1168. httpInvoker.path("externalReferenceCode", externalReferenceCode);
  1169. httpInvoker.userNameAndPassword(
  1170. _builder._login + ":" + _builder._password);
  1171. return httpInvoker.invoke();
  1172. }
  1173. public StructuredContentFolder
  1174. getSiteStructuredContentFolderByExternalReferenceCode(
  1175. Long siteId, String externalReferenceCode)
  1176. throws Exception {
  1177. HttpInvoker.HttpResponse httpResponse =
  1178. getSiteStructuredContentFolderByExternalReferenceCodeHttpResponse(
  1179. siteId, externalReferenceCode);
  1180. String content = httpResponse.getContent();
  1181. if ((httpResponse.getStatusCode() / 100) != 2) {
  1182. _logger.log(
  1183. Level.WARNING,
  1184. "Unable to process HTTP response content: " + content);
  1185. _logger.log(
  1186. Level.WARNING,
  1187. "HTTP response message: " + httpResponse.getMessage());
  1188. _logger.log(
  1189. Level.WARNING,
  1190. "HTTP response status code: " +
  1191. httpResponse.getStatusCode());
  1192. throw new Problem.ProblemException(Problem.toDTO(content));
  1193. }
  1194. else {
  1195. _logger.fine("HTTP response content: " + content);
  1196. _logger.fine(
  1197. "HTTP response message: " + httpResponse.getMessage());
  1198. _logger.fine(
  1199. "HTTP response status code: " +
  1200. httpResponse.getStatusCode());
  1201. }
  1202. try {
  1203. return StructuredContentFolderSerDes.toDTO(content);
  1204. }
  1205. catch (Exception e) {
  1206. _logger.log(
  1207. Level.WARNING,
  1208. "Unable to process HTTP response: " + content, e);
  1209. throw new Problem.ProblemException(Problem.toDTO(content));
  1210. }
  1211. }
  1212. public HttpInvoker.HttpResponse
  1213. getSiteStructuredContentFolderByExternalReferenceCodeHttpResponse(
  1214. Long siteId, String externalReferenceCode)
  1215. throws Exception {
  1216. HttpInvoker httpInvoker = HttpInvoker.newHttpInvoker();
  1217. if (_builder._locale != null) {
  1218. httpInvoker.header(
  1219. "Accept-Language", _builder._locale.toLanguageTag());
  1220. }
  1221. for (Map.Entry<String, String> entry :
  1222. _builder._headers.entrySet()) {
  1223. httpInvoker.header(entry.getKey(), entry.getValue());
  1224. }
  1225. for (Map.Entry<String, String> entry :
  1226. _builder._parameters.entrySet()) {
  1227. httpInvoker.parameter(entry.getKey(), entry.getValue());
  1228. }
  1229. httpInvoker.httpMethod(HttpInvoker.HttpMethod.GET);
  1230. httpInvoker.path(
  1231. _builder._scheme + "://" + _builder._host + ":" +
  1232. _builder._port + _builder._contextPath +
  1233. "/o/headless-delivery/v1.0/sites/{siteId}/structured-content-folders/by-external-reference-code/{externalReferenceCode}");
  1234. httpInvoker.path("siteId", siteId);
  1235. httpInvoker.path("externalReferenceCode", externalReferenceCode);
  1236. httpInvoker.userNameAndPassword(
  1237. _builder._login + ":" + _builder._password);
  1238. return httpInvoker.invoke();
  1239. }
  1240. public StructuredContentFolder
  1241. putSiteStructuredContentFolderByExternalReferenceCode(
  1242. Long siteId, String externalReferenceCode,
  1243. StructuredContentFolder structuredContentFolder)
  1244. throws Exception {
  1245. HttpInvoker.HttpResponse httpResponse =
  1246. putSiteStructuredContentFolderByExternalReferenceCodeHttpResponse(
  1247. siteId, externalReferenceCode, structuredContentFolder);
  1248. String content = httpResponse.getContent();
  1249. if ((httpResponse.getStatusCode() / 100) != 2) {
  1250. _logger.log(
  1251. Level.WARNING,
  1252. "Unable to process HTTP response content: " + content);
  1253. _logger.log(
  1254. Level.WARNING,
  1255. "HTTP response message: " + httpResponse.getMessage());
  1256. _logger.log(
  1257. Level.WARNING,
  1258. "HTTP response status code: " +
  1259. httpResponse.getStatusCode());
  1260. throw new Problem.ProblemException(Problem.toDTO(content));
  1261. }
  1262. else {
  1263. _logger.fine("HTTP response content: " + content);
  1264. _logger.fine(
  1265. "HTTP response message: " + httpResponse.getMessage());
  1266. _logger.fine(
  1267. "HTTP response status code: " +
  1268. httpResponse.getStatusCode());
  1269. }
  1270. try {
  1271. return StructuredContentFolderSerDes.toDTO(content);
  1272. }
  1273. catch (Exception e) {
  1274. _logger.log(
  1275. Level.WARNING,
  1276. "Unable to process HTTP response: " + content, e);
  1277. throw new Problem.ProblemException(Problem.toDTO(content));
  1278. }
  1279. }
  1280. public HttpInvoker.HttpResponse
  1281. putSiteStructuredContentFolderByExternalReferenceCodeHttpResponse(
  1282. Long siteId, String externalReferenceCode,
  1283. StructuredContentFolder structuredContentFolder)
  1284. throws Exception {
  1285. HttpInvoker httpInvoker = HttpInvoker.newHttpInvoker();
  1286. httpInvoker.body(
  1287. structuredContentFolder.toString(), "application/json");
  1288. if (_builder._locale != null) {
  1289. httpInvoker.header(
  1290. "Accept-Language", _builder._locale.toLanguageTag());
  1291. }
  1292. for (Map.Entry<String, String> entry :
  1293. _builder._headers.entrySet()) {
  1294. httpInvoker.header(entry.getKey(), entry.getValue());
  1295. }
  1296. for (Map.Entry<String, String> entry :
  1297. _builder._parameters.entrySet()) {
  1298. httpInvoker.parameter(entry.getKey(), entry.getValue());
  1299. }
  1300. httpInvoker.httpMethod(HttpInvoker.HttpMethod.PUT);
  1301. httpInvoker.path(
  1302. _builder._scheme + "://" + _builder._host + ":" +
  1303. _builder._port + _builder._contextPath +
  1304. "/o/headless-delivery/v1.0/sites/{siteId}/structured-content-folders/by-external-reference-code/{externalReferenceCode}");
  1305. httpInvoker.path("siteId", siteId);
  1306. httpInvoker.path("externalReferenceCode", externalReferenceCode);
  1307. httpInvoker.userNameAndPassword(
  1308. _builder._login + ":" + _builder._password);
  1309. return httpInvoker.invoke();
  1310. }
  1311. public Page<Permission> getSiteStructuredContentFolderPermissionsPage(
  1312. Long siteId, String roleNames)
  1313. throws Exception {
  1314. HttpInvoker.HttpResponse httpResponse =
  1315. getSiteStructuredContentFolderPermissionsPageHttpResponse(
  1316. siteId, roleNames);
  1317. String content = httpResponse.getContent();
  1318. if ((httpResponse.getStatusCode() / 100) != 2) {
  1319. _logger.log(
  1320. Level.WARNING,
  1321. "Unable to process HTTP response content: " + content);
  1322. _logger.log(
  1323. Level.WARNING,
  1324. "HTTP response message: " + httpResponse.getMessage());
  1325. _logger.log(
  1326. Level.WARNING,
  1327. "HTTP response status code: " +
  1328. httpResponse.getStatusCode());