From d592502460f5647422cf490d44243a8f5a41a882 Mon Sep 17 00:00:00 2001 From: Eric Liu Date: Mon, 8 May 2017 00:37:29 -0800 Subject: [PATCH] Add plugin_asset_util.PluginDirectory that returns plugin's logdir. Change: 155354289 --- .../backend/event_processing/plugin_asset_util.py | 9 +++++++-- .../backend/event_processing/plugin_asset_util_test.py | 5 +++++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/tensorflow/tensorboard/backend/event_processing/plugin_asset_util.py b/tensorflow/tensorboard/backend/event_processing/plugin_asset_util.py index b9b951fd127..34bfd34195f 100644 --- a/tensorflow/tensorboard/backend/event_processing/plugin_asset_util.py +++ b/tensorflow/tensorboard/backend/event_processing/plugin_asset_util.py @@ -30,6 +30,11 @@ def _IsDirectory(parent, item): return gfile.IsDirectory(os.path.join(parent, item)) +def PluginDirectory(logdir, plugin_name): + """Returns the plugin directory for plugin_name.""" + return os.path.join(logdir, _PLUGINS_DIR, plugin_name) + + def ListPlugins(logdir): """List all the plugins that have registered assets in logdir. @@ -61,7 +66,7 @@ def ListAssets(logdir, plugin_name): not exist (either because the logdir doesn't exist, or because the plugin didn't register) an empty list is returned. """ - plugin_dir = os.path.join(logdir, _PLUGINS_DIR, plugin_name) + plugin_dir = PluginDirectory(logdir, plugin_name) if not gfile.IsDirectory(plugin_dir): return [] entries = gfile.ListDirectory(plugin_dir) @@ -83,7 +88,7 @@ def RetrieveAsset(logdir, plugin_name, asset_name): KeyError: if the asset does not exist. """ - asset_path = os.path.join(logdir, _PLUGINS_DIR, plugin_name, asset_name) + asset_path = os.path.join(PluginDirectory(logdir, plugin_name), asset_name) try: with gfile.Open(asset_path, "r") as f: return f.read() diff --git a/tensorflow/tensorboard/backend/event_processing/plugin_asset_util_test.py b/tensorflow/tensorboard/backend/event_processing/plugin_asset_util_test.py index e74a0642d6e..cfc6857777c 100644 --- a/tensorflow/tensorboard/backend/event_processing/plugin_asset_util_test.py +++ b/tensorflow/tensorboard/backend/event_processing/plugin_asset_util_test.py @@ -50,6 +50,11 @@ class PluginGamma(GenericContentPlugin): class PluginAssetUtilitiesTest(test.TestCase): + def testGetPluginDirectory(self): + self.assertEqual( + os.path.join("logdir", "plugins", "x"), + plugin_asset_util.PluginDirectory("logdir", "x")) + def testNonExistentDirectory(self): tempdir = self.get_temp_dir() fake_dir = os.path.join(tempdir, "nonexistent_dir")