Compare commits

...
Author SHA1 Message Date
r-ca 955e9fa6c8 JavaDoc対応 2024-01-13 14:59:54 +09:00
r-ca 4ce8315678 HiltModule実装 2024-01-13 14:36:59 +09:00
r-ca 3c66480f0f 受け取ったクエリをコンソールに吐き出すようにした 2024-01-13 14:35:25 +09:00
r-ca 82d0187a11 LacertaLibraryの実装を流用して取得できるように 2024-01-13 14:34:07 +09:00
r-ca dc340f1a96 継承, impl生成 2024-01-13 14:30:30 +09:00
r-ca 1d24467c09 インタフェースの戻り値を修正 2024-01-13 14:29:58 +09:00
ろむねこ bf385b952c Merge pull request #55 from lacerta-doc/data/add_search_interface
検索インタフェースをを追加
2024-01-13 14:27:29 +09:00
3 changed files with 71 additions and 2 deletions

No files matched your search

@@ -1,11 +1,13 @@
package one.nem.lacerta.data;
import java.util.ArrayList;
import one.nem.lacerta.model.ListItem;
public interface LacertaSearch {
ListItem autoSearch(String query, int limit);
ArrayList<ListItem> autoSearch(String query, int limit);
ListItem autoSearch(String query, int limit, int offset);
ArrayList<ListItem> autoSearch(String query, int limit, int offset);
}
@@ -0,0 +1,51 @@
package one.nem.lacerta.data.impl;
import java.util.ArrayList;
import javax.inject.Inject;
import one.nem.lacerta.data.LacertaSearch;
import one.nem.lacerta.model.ListItem;
import one.nem.lacerta.data.LacertaLibrary;
import one.nem.lacerta.utils.LacertaLogger;
public class LacertaSearchStubImpl implements LacertaSearch {
private LacertaLibrary library;
private LacertaLogger logger;
@Inject
public LacertaSearchStubImpl(LacertaLibrary library, LacertaLogger logger) {
this.library = library;
this.logger = logger;
}
/**
* 検索
* @param query 検索クエリ
* @param limit 最大取得件数
* @return 検索結果
*/
@Override
public ArrayList<ListItem> autoSearch(String query, int limit) {
logger.debug("SearchStub", "autoSearch");
logger.debug("SearchStub", "query: " + query);
return library.getLibraryPage(limit).getListItems();
}
/**
* 検索
* @param query 検索クエリ
* @param limit 最大取得件数
* @param offset オフセット
* @return 検索結果
*/
@Override
public ArrayList<ListItem> autoSearch(String query, int limit, int offset) {
logger.debug("SearchStub", "autoSearch");
logger.debug("SearchStub", "query: " + query);
return library.getLibraryPage(limit, offset).getListItems();
}
}
@@ -0,0 +1,16 @@
package one.nem.lacerta.data.module;
import dagger.Binds;
import dagger.Module;
import dagger.hilt.InstallIn;
import dagger.hilt.android.components.FragmentComponent;
import one.nem.lacerta.data.LacertaSearch;
import one.nem.lacerta.data.impl.LacertaSearchStubImpl;
@Module
@InstallIn(FragmentComponent.class)
abstract public class LacertaSearchModule {
@Binds
public abstract LacertaSearch bindLacertaSearch(LacertaSearchStubImpl impl);
}