mirror of
https://github.com/kanidm/kanidm.git
synced 2025-02-23 20:47:01 +01:00
Wire in delete and modify to front end (unimplemented)
This commit is contained in:
parent
c090021fdf
commit
f22562a0ba
|
@ -11,10 +11,10 @@ use futures::{future, Future, Stream};
|
||||||
use super::config::Configuration;
|
use super::config::Configuration;
|
||||||
|
|
||||||
// SearchResult
|
// SearchResult
|
||||||
use super::event::{CreateEvent, SearchEvent, AuthEvent};
|
use super::event::{DeleteEvent, ModifyEvent, CreateEvent, SearchEvent, AuthEvent};
|
||||||
use super::filter::Filter;
|
use super::filter::Filter;
|
||||||
use super::log;
|
use super::log;
|
||||||
use super::proto_v1::{CreateRequest, SearchRequest, AuthRequest, AuthResponse};
|
use super::proto_v1::{DeleteRequest, ModifyRequest, CreateRequest, SearchRequest, AuthRequest, AuthResponse};
|
||||||
use super::server;
|
use super::server;
|
||||||
|
|
||||||
struct AppState {
|
struct AppState {
|
||||||
|
@ -91,6 +91,18 @@ fn create(
|
||||||
json_event_decode!(req, state, CreateEvent, Response, CreateRequest)
|
json_event_decode!(req, state, CreateEvent, Response, CreateRequest)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn modify(
|
||||||
|
(req, state): (HttpRequest<AppState>, State<AppState>),
|
||||||
|
) -> impl Future<Item = HttpResponse, Error = Error> {
|
||||||
|
json_event_decode!(req, state, ModifyEvent, Response, ModifyRequest)
|
||||||
|
}
|
||||||
|
|
||||||
|
fn delete(
|
||||||
|
(req, state): (HttpRequest<AppState>, State<AppState>),
|
||||||
|
) -> impl Future<Item = HttpResponse, Error = Error> {
|
||||||
|
json_event_decode!(req, state, DeleteEvent, Response, DeleteRequest)
|
||||||
|
}
|
||||||
|
|
||||||
fn search(
|
fn search(
|
||||||
(req, state): (HttpRequest<AppState>, State<AppState>),
|
(req, state): (HttpRequest<AppState>, State<AppState>),
|
||||||
) -> impl Future<Item = HttpResponse, Error = Error> {
|
) -> impl Future<Item = HttpResponse, Error = Error> {
|
||||||
|
@ -241,6 +253,13 @@ pub fn create_server_core(config: Configuration) {
|
||||||
.resource("/v1/create", |r| {
|
.resource("/v1/create", |r| {
|
||||||
r.method(http::Method::POST).with_async(create)
|
r.method(http::Method::POST).with_async(create)
|
||||||
})
|
})
|
||||||
|
// Should these actually be different method types?
|
||||||
|
.resource("/v1/modify", |r| {
|
||||||
|
r.method(http::Method::POST).with_async(modify)
|
||||||
|
})
|
||||||
|
.resource("/v1/delete", |r| {
|
||||||
|
r.method(http::Method::POST).with_async(delete)
|
||||||
|
})
|
||||||
// curl --header "Content-Type: application/json" --request POST --data '{ "filter" : { "Eq": ["class", "user"] }}' http://127.0.0.1:8080/v1/search
|
// curl --header "Content-Type: application/json" --request POST --data '{ "filter" : { "Eq": ["class", "user"] }}' http://127.0.0.1:8080/v1/search
|
||||||
.resource("/v1/search", |r| {
|
.resource("/v1/search", |r| {
|
||||||
r.method(http::Method::POST).with_async(search)
|
r.method(http::Method::POST).with_async(search)
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
use super::filter::Filter;
|
use super::filter::Filter;
|
||||||
use super::proto_v1::Entry as ProtoEntry;
|
use super::proto_v1::Entry as ProtoEntry;
|
||||||
use super::proto_v1::{CreateRequest, Response, SearchRequest, SearchResponse, AuthRequest, AuthResponse, AuthStatus};
|
use super::proto_v1::{CreateRequest, Response, SearchRequest, SearchResponse, AuthRequest, AuthResponse, AuthStatus, DeleteRequest, ModifyRequest};
|
||||||
use actix::prelude::*;
|
use actix::prelude::*;
|
||||||
use entry::{Entry, EntryCommitted, EntryInvalid, EntryNew, EntryValid};
|
use entry::{Entry, EntryCommitted, EntryInvalid, EntryNew, EntryValid};
|
||||||
use error::OperationError;
|
use error::OperationError;
|
||||||
|
@ -157,6 +157,10 @@ impl Message for DeleteEvent {
|
||||||
}
|
}
|
||||||
|
|
||||||
impl DeleteEvent {
|
impl DeleteEvent {
|
||||||
|
pub fn from_request(request: DeleteRequest) -> Self {
|
||||||
|
unimplemented!()
|
||||||
|
}
|
||||||
|
|
||||||
pub fn new_internal(filter: Filter) -> Self {
|
pub fn new_internal(filter: Filter) -> Self {
|
||||||
DeleteEvent {
|
DeleteEvent {
|
||||||
filter: filter,
|
filter: filter,
|
||||||
|
@ -177,6 +181,10 @@ impl Message for ModifyEvent {
|
||||||
}
|
}
|
||||||
|
|
||||||
impl ModifyEvent {
|
impl ModifyEvent {
|
||||||
|
pub fn from_request(request: ModifyRequest) -> Self {
|
||||||
|
unimplemented!()
|
||||||
|
}
|
||||||
|
|
||||||
pub fn new_internal(filter: Filter, modlist: ModifyList) -> Self {
|
pub fn new_internal(filter: Filter, modlist: ModifyList) -> Self {
|
||||||
ModifyEvent {
|
ModifyEvent {
|
||||||
filter: filter,
|
filter: filter,
|
||||||
|
|
|
@ -63,6 +63,22 @@ impl CreateRequest {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[derive(Debug, Serialize, Deserialize)]
|
||||||
|
pub struct DeleteRequest {
|
||||||
|
pub filter: Filter,
|
||||||
|
}
|
||||||
|
|
||||||
|
impl DeleteRequest {
|
||||||
|
pub fn new(filter: Filter) -> Self {
|
||||||
|
DeleteRequest { filter: filter }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#[derive(Debug, Serialize, Deserialize)]
|
||||||
|
pub struct ModifyRequest {
|
||||||
|
// Probably needs a modlist?
|
||||||
|
}
|
||||||
|
|
||||||
// Login is a multi-step process potentially. First the client says who they
|
// Login is a multi-step process potentially. First the client says who they
|
||||||
// want to request
|
// want to request
|
||||||
//
|
//
|
||||||
|
|
|
@ -696,6 +696,22 @@ impl Handler<CreateEvent> for QueryServer {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl Handler<ModifyEvent> for QueryServer {
|
||||||
|
type Result = Result<OpResult, OperationError>;
|
||||||
|
|
||||||
|
fn handle(&mut self, msg: ModifyEvent, _: &mut Self::Context) -> Self::Result {
|
||||||
|
unimplemented!()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
impl Handler<DeleteEvent> for QueryServer {
|
||||||
|
type Result = Result<OpResult, OperationError>;
|
||||||
|
|
||||||
|
fn handle(&mut self, msg: DeleteEvent, _: &mut Self::Context) -> Self::Result {
|
||||||
|
unimplemented!()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl Handler<AuthEvent> for QueryServer {
|
impl Handler<AuthEvent> for QueryServer {
|
||||||
type Result = Result<AuthResult, OperationError>;
|
type Result = Result<AuthResult, OperationError>;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue