hammond-data: Add a source_exists query.
This commit is contained in:
parent
18e55e23ee
commit
77a52bdc8c
@ -1,9 +1,12 @@
|
||||
//! Random CRUD helper functions.
|
||||
|
||||
use chrono::prelude::*;
|
||||
use diesel;
|
||||
use diesel::prelude::*;
|
||||
|
||||
use diesel;
|
||||
use diesel::dsl::exists;
|
||||
use diesel::select;
|
||||
|
||||
use database::connection;
|
||||
use errors::*;
|
||||
use models::*;
|
||||
@ -266,9 +269,18 @@ fn delete_podcast_episodes(con: &SqliteConnection, parent_id: i32) -> QueryResul
|
||||
diesel::delete(episode.filter(podcast_id.eq(parent_id))).execute(con)
|
||||
}
|
||||
|
||||
pub fn source_exists(url: &str) -> Result<bool> {
|
||||
use schema::source::dsl::*;
|
||||
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
select(exists(source.filter(uri.eq(url))))
|
||||
.get_result(&con)
|
||||
.map_err(From::from)
|
||||
}
|
||||
|
||||
pub(crate) fn podcast_exists(source_id_: i32) -> Result<bool> {
|
||||
use diesel::dsl::exists;
|
||||
use diesel::select;
|
||||
use schema::podcast::dsl::*;
|
||||
|
||||
let db = connection();
|
||||
@ -282,8 +294,6 @@ pub(crate) fn podcast_exists(source_id_: i32) -> Result<bool> {
|
||||
#[cfg_attr(rustfmt, rustfmt_skip)]
|
||||
pub(crate) fn episode_exists(title_: &str, podcast_id_: i32) -> Result<bool> {
|
||||
use schema::episode::dsl::*;
|
||||
use diesel::select;
|
||||
use diesel::dsl::exists;
|
||||
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user