[jbosstools-issues] [JBoss JIRA] (JBIDE-15766) openshift-java-client: dont refresh env variables on each addition/removal

Andre Dietisheim (JIRA) jira-events at lists.jboss.org
Thu Oct 24 05:19:02 EDT 2013


    [ https://issues.jboss.org/browse/JBIDE-15766?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12824569#comment-12824569 ] 

Andre Dietisheim commented on JBIDE-15766:
------------------------------------------

[~mwigglesworth-redhat] very valid concerns, did not think about them when rushing for the rest of the UI. But thinking this API through a 2nd time I pretend that the whole backend API is broken. The general rule of thumb is that you need the diff to be done as close as possible to the peer that stores it. Having to do the diff in the remote client is the worst possible solution. There's 0 guarantee for the client to be up-to-date anyhow. It is verly likely that he'll run into a race condition. In this situation I still dont see the benefit of constantly refreshing the env vars.
                
> openshift-java-client: dont refresh env variables on each addition/removal
> --------------------------------------------------------------------------
>
>                 Key: JBIDE-15766
>                 URL: https://issues.jboss.org/browse/JBIDE-15766
>             Project: Tools (JBoss Tools)
>          Issue Type: Bug
>          Components: openshift
>    Affects Versions: 4.1.1.Beta1, 4.2.0.Alpha1
>            Reporter: Andre Dietisheim
>            Assignee: Andre Dietisheim
>             Fix For: 4.1.1.Beta1, 4.2.0.Alpha1
>
>
> When adding/removing environment variables, the openshift-java-client would always request the backend for the full list. This should not be required and avoided
> {code:title=ApplicationResource#addEnvironmentVariable}
> 		EnvironmentVariableResourceDTO environmentVariableResourceDTO =
> 				new AddEnvironmentVariableRequest().execute(name, value);
> 		IEnvironmentVariable environmentVariable = new EnvironmentVariableResource(environmentVariableResourceDTO, this);
> 		updateEnvironmentVariables();
> 		return environmentVariable;
> {code}
> {code:title=ApplicationResource#updateEnvironmentVariables}
> 	protected void updateEnvironmentVariables() throws OpenShiftException {
> 		if (environmentVariableByName == null) {
> 			environmentVariableByName = loadEnvironmentVariables();
> 		} else {
> 			environmentVariableByName.clear();
> 			environmentVariableByName.putAll(loadEnvironmentVariables());
> 		}
> 	}
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the jbosstools-issues mailing list