extends AbstractServiceFactory
implements the main type of Services for the SMEFactory
Singleton Pattern is implemented, so only one instance can be made
SMERelationships stores a table with Relationships between SMEs
Example:
This table
A B C
A 0 1 0
B 1 0 1
C 0 1 0
is stored in the 3 vectors
smeNames = {A, B, C}
relationShips = {{0, 1, 0}, {1, 0, 1}, {0, 1, 0}}
DijstraComparator is used by the findNewFriend method, as Java anonymous
classes do not support closures and the distance array is needed for the
comparison.