userRepository = $userRepository; } public function handle(Request $request, ConnectionInterface $httpConnection) { $validator = Validator::make($request->all(), [ 'name' => 'required', ], [ 'required' => 'The :attribute field is required.', ]); if ($validator->fails()) { $httpConnection->send(respond_json(['errors' => $validator->getMessageBag()], 401)); $httpConnection->close(); return; } $insertData = [ 'name' => $request->get('name'), 'auth_token' => (string) Str::uuid(), 'can_specify_subdomains' => (int) $request->get('can_specify_subdomains') ]; $this->userRepository ->storeUser($insertData) ->then(function ($user) use ($httpConnection) { $httpConnection->send(respond_json(['user' => $user], 200)); $httpConnection->close(); }); } }