GenericServiceを拡張するATGクラスを介して複数のレコードを更新しようとしています。しかし、私は障害物に逆らって走っています。キャッシュされたオブジェクトにすべてのアイテム/行を追加し続け、item.add()を使用してテーブルと単一のコマンド同期を実行できる複数の挿入クエリを実行するにはどうすればよいですか?
サンプルコード
最初の部分は、挿入が行われる前にテーブルの行をクリアすることです(ループして1つずつ削除することなく、テーブルのすべての行をクリアする方法を誰かが知っている場合に非常に役立ちます)。
MutableRepository repo = (MutableRepository) feedRepository;
RepositoryView view = null;
try{
view = getFeedRepository().getView(getFeedRepositoryFeedDataDescriptorName());
RepositoryItem[] items = null;
if(view != null){
QueryBuilder qb = view.getQueryBuilder();
Query getFeedsQuery = qb.createUnconstrainedQuery();
items = view.executeQuery(getFeedsQuery);
}
if(items != null && items.length>0){
// remove all items in the repository
for(RepositoryItem item :items){
repo.removeItem(item.getRepositoryId(), getFeedRepositoryFeedDataDescriptorName());
}
}
for(RSSFeedObject rfo : feedEntries){
MutableRepositoryItem feedItem = repo.createItem(getFeedRepositoryFeedDataDescriptorName());
feedItem.setPropertyValue(DB_COL_AUTHOR, rfo.getAuthor());
feedItem.setPropertyValue(DB_COL_FEEDURL, rfo.getFeedUrl());
feedItem.setPropertyValue(DB_COL_TITLE, rfo.getTitle());
feedItem.setPropertyValue(DB_COL_FEEDURL, rfo.getPublishedDate());
RepositoryItem item = repo.addItem(feedItem) ;
}