Skip to main content
summaryrefslogtreecommitdiffstats
blob: 8f74d350fe4b98f3e9feced2424bba04063f9cdf (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package org.eclipse.osee.ote.ui.message.internal;

import java.util.Set;
import java.util.concurrent.ConcurrentSkipListSet;

import org.eclipse.osee.ote.message.MessageDefinitionProvider;

public class MessageProviderVersion {
	Set<String> versions = new ConcurrentSkipListSet<String>();
	
	public void add(MessageDefinitionProvider provider){
		versions.add(generateVersion(provider));
	}
	
	public void remove(MessageDefinitionProvider provider){
		versions.remove(generateVersion(provider));
	}
	
	public String getVersion(){
		if(versions.size() == 0){
			return "no library detected";
		}
		StringBuilder sb = new StringBuilder();
		for(String ver:versions){
			sb.append(ver);
			sb.append("\n");
		}
		sb.deleteCharAt(sb.length()-1);
		return sb.toString();
	}

	private String generateVersion(MessageDefinitionProvider provider){
		return String.format("%s[%s.%s]", provider.singletonId(), provider.majorVersion(), provider.minorVersion());
	}
}

Back to the top