private void modifyLinkedThread(Map<String, Object> jsonrpc2Params) throws Exception {
        Map<String, Object> params = getParams(jsonrpc2Params,
                new NullableExtendedParam(Constants.Param.Name.LINKED_THREAD_ID, false),
                new NullableExtendedParam(Constants.Param.Name.HEADLINE, true));

        String headline = (String) params.get(Constants.Param.Name.HEADLINE);
        int linkedThreadId = (Integer)params.get(Constants.Param.Name.LINKED_THREAD_ID);

        LinkedThread linkedThread = em.find(LinkedThread.class, linkedThreadId);
        if(linkedThread == null){
            responseParams.put(Constants.Param.Status.STATUS, Constants.Param.Status.OBJECT_NOT_FOUND);
            return;
        }
        if(linkedThread.getAccount().getId() != accountId){
            throwJSONRPC2Error(JSONRPC2Error.INVALID_PARAMS, Constants.Errors.ACTION_NOT_ALLOWED);
        }
        if(headline != null){
            linkedThread.setHeadLine(headline);
        }
        persistObjects(linkedThread);
        responseParams.put(Constants.Param.Name.LINKED_THREAD, serialize(linkedThread));
        responseParams.put(Constants.Param.Status.STATUS, Constants.Param.Status.SUCCESS);
    }