test_publish Subroutine

public subroutine test_publish(this)

Arguments

Type IntentOptional Attributes Name
class(MpiTestMethod), intent(inout) :: this

Calls

proc~~test_publish~~CallsGraph proc~test_publish test_publish getmpicommunicator getmpicommunicator proc~test_publish->getmpicommunicator none~free_directory_resources~2 DirectoryService%free_directory_resources proc~test_publish->none~free_directory_resources~2 none~publish~2 DirectoryService%publish proc~test_publish->none~publish~2 mpi_barrier mpi_barrier none~free_directory_resources~2->mpi_barrier mpi_comm_free mpi_comm_free none~free_directory_resources~2->mpi_comm_free mpi_free_mem mpi_free_mem none~free_directory_resources~2->mpi_free_mem mpi_win_free mpi_win_free none~free_directory_resources~2->mpi_win_free none~free_mpi_resources MpiMutex%free_mpi_resources none~free_directory_resources~2->none~free_mpi_resources proc~mapl_return MAPL_Return none~free_directory_resources~2->proc~mapl_return interface~mapl_assert MAPL_Assert none~publish~2->interface~mapl_assert mpi_comm_rank mpi_comm_rank none~publish~2->mpi_comm_rank none~acquire MpiMutex%acquire none~publish~2->none~acquire none~get_communicator AbstractServer%get_communicator none~publish~2->none~get_communicator none~get_directory DirectoryService%get_directory none~publish~2->none~get_directory none~put_directory DirectoryService%put_directory none~publish~2->none~put_directory none~release MpiMutex%release none~publish~2->none~release none~publish~2->proc~mapl_return mpi_get mpi_get none~acquire->mpi_get mpi_put mpi_put none~acquire->mpi_put mpi_recv mpi_recv none~acquire->mpi_recv mpi_win_lock mpi_win_lock none~acquire->mpi_win_lock mpi_win_unlock mpi_win_unlock none~acquire->mpi_win_unlock none~free_mpi_resources->mpi_comm_free none~free_mpi_resources->mpi_free_mem none~free_mpi_resources->mpi_win_free mpi_type_free mpi_type_free none~free_mpi_resources->mpi_type_free none~get_directory->mpi_get none~get_directory->mpi_win_lock none~get_directory->mpi_win_unlock none~put_directory->mpi_put none~put_directory->mpi_win_lock none~put_directory->mpi_win_unlock none~release->mpi_get none~release->mpi_put mpi_send mpi_send none~release->mpi_send none~release->mpi_win_lock none~release->mpi_win_unlock at at proc~mapl_return->at insert insert proc~mapl_return->insert proc~mapl_throw_exception MAPL_throw_exception proc~mapl_return->proc~mapl_throw_exception

Source Code

   subroutine test_publish(this)
      class (MpiTestMethod), intent(inout) :: this

      type (DirectoryService) :: ds
      integer :: comm
      type (MockServer) :: mock_server

      comm = this%getMpiCommunicator()
      ds = DirectoryService(comm)

      mock_server = MockServer(comm)
      call ds%publish(PortInfo('service', mock_server), mock_server)

      call ds%free_directory_resources()

   end subroutine test_publish