Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 25 additions & 1 deletion src/main/java/com/kintone/client/PluginClient.java
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ public class PluginClient {
* @return the response data. See {@link GetInstalledPluginsResponseBody}
*/
public GetInstalledPluginsResponseBody getInstalledPlugins() {
return getInstalledPlugins(null, null);
return getInstalledPlugins(null, null, null);
}

/**
Expand All @@ -39,7 +39,31 @@ public GetInstalledPluginsResponseBody getInstalledPlugins() {
* @return the response data. See {@link GetInstalledPluginsResponseBody}
*/
public GetInstalledPluginsResponseBody getInstalledPlugins(Long offset, Long limit) {
return getInstalledPlugins(null, offset, limit);
}

/**
* Gets the list of plug-ins imported into Kintone.
*
* @param ids The plugin IDs to retrieve. Up to 100 plugin IDs can be specified.
* @return the response data. See {@link GetInstalledPluginsResponseBody}
*/
public GetInstalledPluginsResponseBody getInstalledPlugins(List<String> ids) {
return getInstalledPlugins(ids, null, null);
}

/**
* Gets the list of plug-ins imported into Kintone.
*
* @param ids The plugin IDs to retrieve. Up to 100 plugin IDs can be specified.
* @param offset The number of plug-ins to skip from the list of installed plug-ins.
* @param limit The maximum number of plug-ins to retrieve.
* @return the response data. See {@link GetInstalledPluginsResponseBody}
*/
public GetInstalledPluginsResponseBody getInstalledPlugins(
List<String> ids, Long offset, Long limit) {
GetInstalledPluginsRequest request = new GetInstalledPluginsRequest();
request.setIds(ids);
request.setOffset(offset);
request.setLimit(limit);
return getInstalledPlugins(request);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package com.kintone.client.api.plugin;

import com.kintone.client.api.KintoneRequest;
import java.util.List;
import lombok.Data;

/** A request object for Get Installed Plugins API. */
Expand All @@ -12,4 +13,10 @@ public class GetInstalledPluginsRequest implements KintoneRequest {

/** The number of plug-ins to skip from the list of installed plug-ins. */
private Long offset;

/**
* The plugin IDs to retrieve. Up to 100 plugin IDs can be specified. When null or empty array,
* this parameter is omitted.
*/
private List<String> ids;
}
2 changes: 2 additions & 0 deletions src/main/java/com/kintone/client/api/plugin/package-info.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
/** Provides request and response objects related to Plugin settings. */
package com.kintone.client.api.plugin;
3 changes: 3 additions & 0 deletions src/main/java/com/kintone/client/model/plugin/Plugin.java
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,7 @@ public class Plugin {

/** The version number of the plug-in. */
private final String version;

/** The description of the plug-in. Returns an empty string when not set. */
private final String description;
}
27 changes: 27 additions & 0 deletions src/test/java/com/kintone/client/PluginClientTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
import com.kintone.client.api.plugin.*;
import com.kintone.client.model.plugin.App;
import com.kintone.client.model.plugin.Plugin;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import org.junit.jupiter.api.Test;
Expand Down Expand Up @@ -40,6 +41,7 @@ public void getInstalledPlugins_Long() {
@Test
public void getInstalledPlugins_Request() {
GetInstalledPluginsRequest req = new GetInstalledPluginsRequest();
req.setIds(Arrays.asList("plugin1", "plugin2"));
req.setOffset(5L);
req.setLimit(50L);
List<Plugin> plugins = Collections.emptyList();
Expand All @@ -51,6 +53,31 @@ public void getInstalledPlugins_Request() {
assertThat(mockClient.getLastBody()).isEqualTo(req);
}

@Test
public void getInstalledPlugins_List() {
List<String> ids = Arrays.asList("plugin1", "plugin2");
List<Plugin> plugins = Collections.emptyList();
GetInstalledPluginsResponseBody resp = new GetInstalledPluginsResponseBody(plugins);
mockClient.setResponseBody(resp);

assertThat(sut.getInstalledPlugins(ids)).isEqualTo(resp);
assertThat(mockClient.getLastApi()).isEqualTo(KintoneApi.GET_PLUGINS);
assertThat(mockClient.getLastBody()).isEqualTo(new GetInstalledPluginsRequest().setIds(ids));
}

@Test
public void getInstalledPlugins_AllParams() {
List<String> ids = Arrays.asList("plugin1", "plugin2");
List<Plugin> plugins = Collections.emptyList();
GetInstalledPluginsResponseBody resp = new GetInstalledPluginsResponseBody(plugins);
mockClient.setResponseBody(resp);

assertThat(sut.getInstalledPlugins(ids, 0L, 1L)).isEqualTo(resp);
assertThat(mockClient.getLastApi()).isEqualTo(KintoneApi.GET_PLUGINS);
assertThat(mockClient.getLastBody())
.isEqualTo(new GetInstalledPluginsRequest().setIds(ids).setOffset(0L).setLimit(1L));
}

@Test
public void installPlugin_String() {
InstallPluginResponseBody resp = new InstallPluginResponseBody("1", "2");
Expand Down
Loading