Skip to content

Commit 0f3766a

Browse files
committed
split env var snippet into two different methods
1 parent 4fed709 commit 0f3766a

File tree

1 file changed

+37
-35
lines changed

1 file changed

+37
-35
lines changed

template/server/messaging.py

Lines changed: 37 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -114,47 +114,49 @@ def _get_execute_request(
114114
}
115115
)
116116

117-
def _get_env_var_command(self, key: str, value: str, action: str = "set") -> str:
118-
"""Get environment variable command for the current language."""
119-
if action == "set":
120-
if self.language == "python":
121-
return f"import os; os.environ['{key}'] = '{value}'"
122-
elif self.language in ["javascript", "typescript"]:
123-
return f"process.env['{key}'] = '{value}'"
124-
elif self.language == "deno":
125-
return f"Deno.env.set('{key}', '{value}')"
126-
elif self.language == "r":
127-
return f'Sys.setenv({key} = "{value}")'
128-
elif self.language == "java":
129-
return f'System.setProperty("{key}", "{value}");'
130-
elif self.language == "bash":
131-
return f"export {key}='{value}'"
132-
elif action == "delete":
133-
if self.language == "python":
134-
return f"import os; del os.environ['{key}']"
135-
elif self.language in ["javascript", "typescript"]:
136-
return f"delete process.env['{key}']"
137-
elif self.language == "deno":
138-
return f"Deno.env.delete('{key}')"
139-
elif self.language == "r":
140-
return f"Sys.unsetenv('{key}')"
141-
elif self.language == "java":
142-
return f'System.clearProperty("{key}");'
143-
elif self.language == "bash":
144-
return f"unset {key}"
117+
def _set_env_var_snippet(self, key: str, value: str) -> str:
118+
"""Get environment variable set command for the current language."""
119+
if self.language == "python":
120+
return f"import os; os.environ['{key}'] = '{value}'"
121+
elif self.language in ["javascript", "typescript"]:
122+
return f"process.env['{key}'] = '{value}'"
123+
elif self.language == "deno":
124+
return f"Deno.env.set('{key}', '{value}')"
125+
elif self.language == "r":
126+
return f'Sys.setenv({key} = "{value}")'
127+
elif self.language == "java":
128+
return f'System.setProperty("{key}", "{value}");'
129+
elif self.language == "bash":
130+
return f"export {key}='{value}'"
145131
return ""
146132

147-
def _build_env_vars_code(self, env_vars: Dict[StrictStr, str]) -> str:
133+
def _delete_env_var_snippet(self, key: str) -> str:
134+
"""Get environment variable delete command for the current language."""
135+
if self.language == "python":
136+
return f"import os; del os.environ['{key}']"
137+
elif self.language in ["javascript", "typescript"]:
138+
return f"delete process.env['{key}']"
139+
elif self.language == "deno":
140+
return f"Deno.env.delete('{key}')"
141+
elif self.language == "r":
142+
return f"Sys.unsetenv('{key}')"
143+
elif self.language == "java":
144+
return f'System.clearProperty("{key}");'
145+
elif self.language == "bash":
146+
return f"unset {key}"
147+
return ""
148+
149+
def _set_env_vars_code(self, env_vars: Dict[StrictStr, str]) -> str:
148150
"""Build environment variable code for the current language."""
149151
env_commands = []
150152
for k, v in env_vars.items():
151-
command = self._get_env_var_command(k, v, "set")
153+
command = self._set_env_var_snippet(k, v)
152154
if command:
153155
env_commands.append(command)
154156

155157
return "\n".join(env_commands)
156158

157-
def _build_env_vars_cleanup_code(self, env_vars: Dict[StrictStr, str]) -> str:
159+
def _reset_env_vars_code(self, env_vars: Dict[StrictStr, str]) -> str:
158160
"""Build environment variable cleanup code for the current language."""
159161
cleanup_commands = []
160162

@@ -163,10 +165,10 @@ def _build_env_vars_cleanup_code(self, env_vars: Dict[StrictStr, str]) -> str:
163165
if self.global_env_vars and key in self.global_env_vars:
164166
# Reset to global value
165167
value = self.global_env_vars[key]
166-
command = self._get_env_var_command(key, value, "set")
168+
command = self._set_env_var_snippet(key, value)
167169
else:
168170
# Remove the variable
169-
command = self._get_env_var_command(key, "", "delete")
171+
command = self._delete_env_var_snippet(key)
170172

171173
if command:
172174
cleanup_commands.append(command)
@@ -242,12 +244,12 @@ async def execute(
242244

243245
if env_vars:
244246
# Add env var setup at the beginning
245-
env_setup_code = self._build_env_vars_code(env_vars)
247+
env_setup_code = self._set_env_vars_code(env_vars)
246248
if env_setup_code:
247249
complete_code = f"{env_setup_code}\n{complete_code}"
248250

249251
# Add env var cleanup at the end
250-
env_cleanup_code = self._build_env_vars_cleanup_code(env_vars)
252+
env_cleanup_code = self._reset_env_vars_code(env_vars)
251253
if env_cleanup_code:
252254
complete_code = f"{complete_code}\n{env_cleanup_code}"
253255

0 commit comments

Comments
 (0)