From 5a3e48de996568f2553bd0fd8c282a8b0b703f28 Mon Sep 17 00:00:00 2001 From: Alex Hong Date: Mon, 27 Nov 2023 14:39:48 -0800 Subject: [PATCH] API-1822 setup sample files for java sdk api calls --- .../com/bynder/sdk/sample/BrandsSample.java | 45 ++++++++++++ .../bynder/sdk/sample/CollectionsSample.java | 60 ++++++++++++++++ .../com/bynder/sdk/sample/MediaSample.java | 70 +++++++++++++++++++ .../sdk/sample/MetapropertiesSample.java | 0 .../bynder/sdk/sample/SmartFiltersSample.java | 0 .../com/bynder/sdk/sample/TagsSample.java | 43 ++++++++++++ .../com/bynder/sdk/sample/UploadSample.java | 0 .../com/bynder/sdk/sample/UsageSample.java | 0 8 files changed, 218 insertions(+) create mode 100644 src/main/java/com/bynder/sdk/sample/BrandsSample.java create mode 100644 src/main/java/com/bynder/sdk/sample/CollectionsSample.java create mode 100644 src/main/java/com/bynder/sdk/sample/MediaSample.java create mode 100644 src/main/java/com/bynder/sdk/sample/MetapropertiesSample.java create mode 100644 src/main/java/com/bynder/sdk/sample/SmartFiltersSample.java create mode 100644 src/main/java/com/bynder/sdk/sample/TagsSample.java create mode 100644 src/main/java/com/bynder/sdk/sample/UploadSample.java create mode 100644 src/main/java/com/bynder/sdk/sample/UsageSample.java diff --git a/src/main/java/com/bynder/sdk/sample/BrandsSample.java b/src/main/java/com/bynder/sdk/sample/BrandsSample.java new file mode 100644 index 00000000..0e5fcf96 --- /dev/null +++ b/src/main/java/com/bynder/sdk/sample/BrandsSample.java @@ -0,0 +1,45 @@ +package com.bynder.sdk.sample; + +import com.bynder.sdk.configuration.Configuration; +import com.bynder.sdk.model.Brand; +import com.bynder.sdk.service.BynderClient; +import com.bynder.sdk.service.asset.AssetService; +import com.bynder.sdk.util.Utils; + +import java.io.IOException; +import java.net.URISyntaxException; +import java.net.URL; + +import java.util.List; +import java.util.Properties; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + + +public class BrandsSample { + private static final Logger LOG = LoggerFactory.getLogger(BrandsSample.class); + + public static void main(final String[] args) throws URISyntaxException, IOException { + /** + * Loads app.properties file under src/main/resources + */ + Properties appProperties = Utils.loadConfig("app"); + + + // Initialize BynderClient with a permanent token + BynderClient client = BynderClient.Builder.create( + new Configuration.Builder(new URL(appProperties.getProperty("BASE_URL"))) + .setPermanentToken(appProperties.getProperty("PERMANENT_TOKEN")).build()); + + // Initialize asset service + AssetService assetService = client.getAssetService(); + + // Call the API to request for brands + List brands = assetService.getBrands().blockingSingle().body(); + for (Brand brand : brands) { + LOG.info(brand.getName()); + LOG.info(brand.getDescription()); + } + } +} diff --git a/src/main/java/com/bynder/sdk/sample/CollectionsSample.java b/src/main/java/com/bynder/sdk/sample/CollectionsSample.java new file mode 100644 index 00000000..04cfac94 --- /dev/null +++ b/src/main/java/com/bynder/sdk/sample/CollectionsSample.java @@ -0,0 +1,60 @@ +package com.bynder.sdk.sample; + +import com.bynder.sdk.configuration.Configuration; +import com.bynder.sdk.model.Collection; +import com.bynder.sdk.service.BynderClient; +import com.bynder.sdk.service.collection.CollectionService; +import com.bynder.sdk.query.collection.CollectionQuery; +import com.bynder.sdk.query.collection.CollectionCreateQuery; +import com.bynder.sdk.util.Utils; + +import java.io.IOException; +import java.net.URISyntaxException; +import java.net.URL; + +import java.util.List; +import java.util.Map; +import java.util.Properties; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class CollectionsSample { + private static final Logger LOG = LoggerFactory.getLogger(CollectionsSample.class); + + public static void main(final String[] args) throws URISyntaxException, IOException { + /** + * Loads app.properties file under src/main/resources + */ + Properties appProperties = Utils.loadConfig("app"); + + + // Initialize BynderClient with a permanent token + BynderClient client = BynderClient.Builder.create( + new Configuration.Builder(new URL(appProperties.getProperty("BASE_URL"))) + .setPermanentToken(appProperties.getProperty("PERMANENT_TOKEN")).build()); + + // Initialize collection service + CollectionService collectionService = client.getCollectionService(); + + // get collections + CollectionQuery collectionQuery = new CollectionQuery(); + List collections = collectionService.getCollections(collectionQuery).blockingSingle().body(); + for (Collection collectionResult : collections) { + LOG.info(collectionResult.getId()); + LOG.info(collectionResult.getName()); + LOG.info(collectionResult.getDescription()); + } + + // add collection + CollectionCreateQuery createCollectionQuery = new CollectionCreateQuery("New Collection 1234"); + collectionService.createCollection(createCollectionQuery).blockingSingle(); + // + List updatedCollections = collectionService.getCollections(collectionQuery).blockingSingle().body(); + for (Collection collectionResult : collections) { + LOG.info(collectionResult.getId()); + LOG.info(collectionResult.getName()); + LOG.info(collectionResult.getDescription()); + } + } +} diff --git a/src/main/java/com/bynder/sdk/sample/MediaSample.java b/src/main/java/com/bynder/sdk/sample/MediaSample.java new file mode 100644 index 00000000..18cd6755 --- /dev/null +++ b/src/main/java/com/bynder/sdk/sample/MediaSample.java @@ -0,0 +1,70 @@ +package com.bynder.sdk.sample; + +import com.bynder.sdk.configuration.Configuration; +import com.bynder.sdk.model.Media; +import com.bynder.sdk.model.MediaType; + +import com.bynder.sdk.query.MediaInfoQuery; +import com.bynder.sdk.query.MediaModifyQuery; +import com.bynder.sdk.query.MediaQuery; +import com.bynder.sdk.query.OrderBy; + +import com.bynder.sdk.service.BynderClient; +import com.bynder.sdk.service.asset.AssetService; +import com.bynder.sdk.util.Utils; + +import java.io.IOException; +import java.net.URISyntaxException; +import java.net.URL; + +import java.util.List; +import java.util.Properties; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class MediaSample { + private static final Logger LOG = LoggerFactory.getLogger(MediaSample.class); + + public static void main(final String[] args) throws URISyntaxException, IOException { + /** + * Loads app.properties file under src/main/resources + */ + Properties appProperties = Utils.loadConfig("app"); + + // Initialize BynderClient with a permanent token + BynderClient client = BynderClient.Builder.create( + new Configuration.Builder(new URL(appProperties.getProperty("BASE_URL"))) + .setPermanentToken(appProperties.getProperty("PERMANENT_TOKEN")).build()); + + // Initialize asset service + AssetService assetService = client.getAssetService(); + + // Call the API to request for media assets + MediaQuery mediaQuery = new MediaQuery().setType(MediaType.IMAGE).setOrderBy(OrderBy.NAME_DESC).setLimit(10).setPage(1); + List mediaList = assetService.getMediaList(mediaQuery).blockingSingle().body(); + for (Media media : mediaList) { + LOG.info(media.getId()); + LOG.info(media.getName()); + } + + if (!mediaList.isEmpty()) { + // get media info for single asset + String mediaId = mediaList.get(0).getId(); + MediaInfoQuery mediaInfoQuery = new MediaInfoQuery(mediaId); + Media foundMedia = assetService.getMediaInfo(mediaInfoQuery).blockingSingle().body(); + LOG.info("get media info result: "); + LOG.info(foundMedia.getId()); + LOG.info(foundMedia.getName()); + + // modify name of asset + MediaModifyQuery modifyQuery = new MediaModifyQuery(mediaId).setName("New Name"); + assetService.modifyMedia(modifyQuery).blockingSingle(); + + Media updatedFoundMedia = assetService.getMediaInfo(mediaInfoQuery).blockingSingle().body(); + LOG.info("get updated media info result: "); + LOG.info(updatedFoundMedia.getId()); + LOG.info(updatedFoundMedia.getName()); + } + } +} \ No newline at end of file diff --git a/src/main/java/com/bynder/sdk/sample/MetapropertiesSample.java b/src/main/java/com/bynder/sdk/sample/MetapropertiesSample.java new file mode 100644 index 00000000..e69de29b diff --git a/src/main/java/com/bynder/sdk/sample/SmartFiltersSample.java b/src/main/java/com/bynder/sdk/sample/SmartFiltersSample.java new file mode 100644 index 00000000..e69de29b diff --git a/src/main/java/com/bynder/sdk/sample/TagsSample.java b/src/main/java/com/bynder/sdk/sample/TagsSample.java new file mode 100644 index 00000000..2ed8334b --- /dev/null +++ b/src/main/java/com/bynder/sdk/sample/TagsSample.java @@ -0,0 +1,43 @@ +package com.bynder.sdk.sample; + +import com.bynder.sdk.configuration.Configuration; +import com.bynder.sdk.model.Tag; +import com.bynder.sdk.service.BynderClient; +import com.bynder.sdk.service.asset.AssetService; +import com.bynder.sdk.util.Utils; + +import java.io.IOException; +import java.net.URISyntaxException; +import java.net.URL; + +import java.util.List; +import java.util.Map; +import java.util.Properties; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class TagsSample { + private static final Logger LOG = LoggerFactory.getLogger(TagsSample.class); + + public static void main(final String[] args) throws URISyntaxException, IOException { + /** + * Loads app.properties file under src/main/resources + */ + Properties appProperties = Utils.loadConfig("app"); + + // Initialize BynderClient with a permanent token + BynderClient client = BynderClient.Builder.create( + new Configuration.Builder(new URL(appProperties.getProperty("BASE_URL"))) + .setPermanentToken(appProperties.getProperty("PERMANENT_TOKEN")).build()); + + AssetService assetService = client.getAssetService(); + + // get tags + List assetTags = assetService.getTags().blockingSingle().body(); + for (Tag assetTag : assetTags) { + LOG.info(assetTag.getId()); + LOG.info(assetTag.getTag()); + } + } +} diff --git a/src/main/java/com/bynder/sdk/sample/UploadSample.java b/src/main/java/com/bynder/sdk/sample/UploadSample.java new file mode 100644 index 00000000..e69de29b diff --git a/src/main/java/com/bynder/sdk/sample/UsageSample.java b/src/main/java/com/bynder/sdk/sample/UsageSample.java new file mode 100644 index 00000000..e69de29b