0

Can any one help me with converting this piece of code into lambda expression, I am struck with this

Observable.create(new OnSubscribe<User>() {
        @Override
        public void call(Subscriber<? super User> arg0) {
            User updatedUser = userService.updateuser(usermapper.userdtotoentity(user));
            arg0.onNext(updatedUser);
        }
    }).subscribe(new Action1<User>() {
        @Override
        public void call(User user) {
            if (user != null) {
                response.resume(user);
            } else
                response.resume(Response.status(Status.NOT_FOUND).build());
        }
    }, new Action1<Throwable>() {
        @Override
        public void call(Throwable t) {
            logger.debug("User with email_id:" + email_id + " is not present");
            response.resume(t);
        }
    });
Sanket
  • 355
  • 5
  • 14

1 Answers1

5
    Observable.<User>create(subscriber -> {

        User updatedUser = userService.updateuser(usermapper.userdtotoentity(user));
        subscriber.onNext(updatedUser);

    }).subscribe(

         user -> {
           if (user != null) {
              response.resume(user);
          } else {
            response.resume(Response.status(Status.NOT_FOUND).build());
          }
        }, 

         error -> {
            logger.debug("User with email_id:" + email_id + " is not present");
            response.resume(error);
         }
   );
m.ostroverkhov
  • 1,910
  • 1
  • 15
  • 17
  • i am getting error for this as on 4th line: Lambda expression's parameter user cannot redeclare another local variable defined in an enclosing scope. – Sanket May 19 '16 at 13:36
  • where to add the missing } ? – Sanket May 19 '16 at 13:45
  • actually i resolved it by just changing the user to the other name in the line 4 .and thank u for the help – Sanket May 19 '16 at 13:54