}//UploadAttachmentComposite

        public UpdateOrAddPageCompositeResponse UpdateOrAddPageComposite(UpdateOrAddPageCompositeRequest request)
        {
            UpdateOrAddPageCompositeResponse response = new UpdateOrAddPageCompositeResponse();

            try
            {
                IsPageExistsCompositeResponse isPageExistsCompositeResponse =
                    IsPageExistsComposite(new IsPageExistsCompositeRequest()
                {
                    PageTitle = request.PageTitle
                    ,
                    Password = request.Password
                    ,
                    Username = request.Username
                    ,
                    URL = request.URL
                    ,
                    SpaceKey = request.SpaceKey
                });

                if (isPageExistsCompositeResponse.Result.Success())
                {
                    UpdatePageResponse updatePageResponse =
                        UpdatePage(new UpdatePageRequest()
                    {
                        PageId = isPageExistsCompositeResponse.isPageExistsResult.SuccessResponse.Id.ToString()
                        ,
                        PageTitle = request.PageTitle
                        ,
                        Password = request.Password
                        ,
                        Username = request.Username
                        ,
                        URL = request.URL
                        ,
                        VersionNumber = (isPageExistsCompositeResponse.isPageExistsResult.SuccessResponse.Version.Number + 1).ToString()
                        , Content     = request.Content
                    });

                    response.UpdatePageResult = updatePageResponse.UpdatePageResult;

                    if (response.UpdatePageResult.FailedResponse == null)
                    {
                        response.Result = new Ac4yProcessResult()
                        {
                            Code = Ac4yProcessResult.SUCCESS
                        };
                    }
                    else
                    {
                        response.Result = new Ac4yProcessResult()
                        {
                            Code = Ac4yProcessResult.FAIL, Message = "Nem sikerült frissíteni az oldalt!"
                        };
                    }
                }
                else
                {
                    IsPageExistsCompositeResponse isPageExistsCompositeResponseParentPage =
                        IsPageExistsComposite(new IsPageExistsCompositeRequest()
                    {
                        PageTitle = request.ParentPageTitle
                        ,
                        Password = request.Password
                        ,
                        Username = request.Username
                        ,
                        URL = request.URL
                        ,
                        SpaceKey = request.SpaceKey
                    });

                    if (isPageExistsCompositeResponseParentPage.Result.Success())
                    {
                        AddNewPageResponse addNewPageResponse =
                            AddNewPage(new AddNewPageRequest()
                        {
                            Password = request.Password
                            ,
                            Username = request.Username
                            ,
                            URL = request.URL
                            ,
                            SpaceKey = request.SpaceKey
                            ,
                            ParentPageId = isPageExistsCompositeResponseParentPage.isPageExistsResult.SuccessResponse.Id.ToString()
                            ,
                            PageTitle = request.PageTitle
                            ,
                            Content = request.Content
                        });
                        response.AddNewPageResult = addNewPageResponse.AddNewPageResult;

                        if (response.AddNewPageResult.FailedResponse == null)
                        {
                            response.Result = new Ac4yProcessResult()
                            {
                                Code = Ac4yProcessResult.SUCCESS
                            };
                        }
                        else
                        {
                            response.Result = new Ac4yProcessResult()
                            {
                                Code = Ac4yProcessResult.FAIL, Message = "Nem sikerült az új oldalt létrehozni!"
                            };
                        }
                    }
                    else
                    {
                        response.Result = (new Ac4yProcessResult()
                        {
                            Code = Ac4yProcessResult.FAIL, Message = "Nincs oldal a szülőoldal névvel!"
                        });
                    }
                }
            }
            catch (Exception exception)
            {
                response.Result = (new Ac4yProcessResult()
                {
                    Code = Ac4yProcessResult.FAIL, Message = exception.Message, Description = exception.StackTrace
                });
            }
            return(response);
        }//AddNewPageComposite
        }//DeletePage

        public DeletePageCompositeResponse DeletePageComposite(DeletePageCompositeRequest request)
        {
            DeletePageCompositeResponse response = new DeletePageCompositeResponse();

            try
            {
                IsPageExistsCompositeResponse isPageExistsCompositeResponse =
                    IsPageExistsComposite(new IsPageExistsCompositeRequest()
                {
                    PageTitle  = request.PageTitle
                    , Password = request.Password
                    , Username = request.Username
                    , URL      = request.URL
                    , SpaceKey = request.SpaceKey
                });

                if (isPageExistsCompositeResponse.Result.Success())
                {
                    DeletePageResponse deletePageResponse =
                        DeletePage(new DeletePageRequest()
                    {
                        PageId = isPageExistsCompositeResponse.isPageExistsResult.SuccessResponse.Id.ToString()
                        ,
                        Password = request.Password
                        ,
                        Username = request.Username
                        ,
                        URL = request.URL
                        ,
                        SpaceKey = request.SpaceKey
                    });

                    response.DeletePageResult = deletePageResponse.DeletePageResult;

                    if (response.DeletePageResult.FailedResponse == null)
                    {
                        response.Result = new Ac4yProcessResult()
                        {
                            Code = Ac4yProcessResult.SUCCESS
                        };
                    }
                    else
                    {
                        response.Result = new Ac4yProcessResult()
                        {
                            Code = Ac4yProcessResult.FAIL, Message = "Nem sikerült a törlés!"
                        };
                    }
                }
                else
                {
                    response.Result = (new Ac4yProcessResult()
                    {
                        Code = Ac4yProcessResult.FAIL, Message = "Nem létezik ilyen névvel oldal!"
                    });
                }
            }
            catch (Exception exception)
            {
                response.Result = (new Ac4yProcessResult()
                {
                    Code = Ac4yProcessResult.FAIL, Message = exception.Message, Description = exception.StackTrace
                });
            }
            return(response);
        }//DeletePageComposite
        }//AddNewPageComposite

        public UploadAttachmentCompositeResponse UploadAttachmentComposite(UploadAttachmentCompositeRequest request)
        {
            UploadAttachmentCompositeResponse response = new UploadAttachmentCompositeResponse();

            try
            {
                UploadAttachmentResponse uploadAttachmentResponse = null;

                IsPageExistsCompositeResponse isPageExistsCompositeResponse =
                    IsPageExistsComposite(new IsPageExistsCompositeRequest()
                {
                    PageTitle = request.PageTitle
                    ,
                    Password = request.Password
                    ,
                    Username = request.Username
                    ,
                    URL = request.URL
                    ,
                    SpaceKey = request.SpaceKey
                });

                if (isPageExistsCompositeResponse.Result.Success())
                {
                    uploadAttachmentResponse =
                        UploadAttachment(new UploadAttachmentRequest()
                    {
                        PageId = isPageExistsCompositeResponse.isPageExistsResult.SuccessResponse.Id.ToString()
                        ,
                        Password = request.Password
                        ,
                        Username = request.Username
                        ,
                        URL = request.URL

                        ,
                        ImageFileBase64String = request.ImageFileBase64String
                        ,
                        FileName = request.FileName
                    });
                    response.UploadAttachmentResult = uploadAttachmentResponse.UploadAttachmentResult;

                    if (response.UploadAttachmentResult.FailedResponse == null)
                    {
                        response.Result = new Ac4yProcessResult()
                        {
                            Code = Ac4yProcessResult.SUCCESS
                        };
                    }
                    else
                    {
                        response.Result = new Ac4yProcessResult()
                        {
                            Code = Ac4yProcessResult.FAIL, Message = "Nem sikerült feltölteni a képet!"
                        };
                    }
                }
                else
                {
                    response.Result = (new Ac4yProcessResult()
                    {
                        Code = Ac4yProcessResult.FAIL, Message = "Nincs oldal a megadott címmel!"
                    });
                }
            }
            catch (Exception exception)
            {
                response.Result = (new Ac4yProcessResult()
                {
                    Code = Ac4yProcessResult.FAIL, Message = exception.Message, Description = exception.StackTrace
                });
            }
            return(response);
        }//UploadAttachmentComposite
        }//IsPageExists

        public IsPageExistsCompositeResponse IsPageExistsComposite(IsPageExistsCompositeRequest request)
        {
            IsPageExistsCompositeResponse response = new IsPageExistsCompositeResponse();

            try
            {
                GetIdByTitleResponse getIdByTitleResponse =
                    GetIdByTitle(new GetIdByTitleRequest()
                {
                    Password    = request.Password
                    , PageTitle = request.PageTitle
                    , Username  = request.Username
                    , URL       = request.URL
                    , SpaceKey  = request.SpaceKey
                });

                if (getIdByTitleResponse.Result.Success())
                {
                    IsPageExistsResponse isPageExistsResponse =
                        IsPageExists(new IsPageExistsRequest()
                    {
                        Password = request.Password
                        ,
                        Username = request.Username
                        ,
                        URL = request.URL
                        ,
                        SpaceKey = request.SpaceKey
                        ,
                        PageId = getIdByTitleResponse.GetIdByTitleResult.SuccessResponse.Results[0].Id.ToString()
                    });

                    response.isPageExistsResult = isPageExistsResponse.IsPageExistsResult;
                    if (isPageExistsResponse.IsPageExistsResult.FailedResponse == null)
                    {
                        response.Result = new Ac4yProcessResult()
                        {
                            Code = Ac4yProcessResult.SUCCESS
                        };
                    }
                    else
                    {
                        response.Result = new Ac4yProcessResult()
                        {
                            Code = Ac4yProcessResult.FAIL, Message = "Nincs ilyen nevű oldal!"
                        };
                    }
                }
                else
                {
                    response.Result = new Ac4yProcessResult()
                    {
                        Code = Ac4yProcessResult.FAIL, Message = "Nincs ilyen nevű oldal! Nincs ID!"
                    };
                }
            }
            catch (Exception exception)
            {
                response.Result = (new Ac4yProcessResult()
                {
                    Code = Ac4yProcessResult.FAIL, Message = exception.Message, Description = exception.StackTrace
                });
            }
            return(response);
        }//IsPageExistsComposite