implemented runPublicationThread()