/** * Initializes a trace color repository from a given file. * * @param fileName * The name of the file to read from * @param projectContext * The project context to use. * @return The initialized trace color repository * * @throws IOException * If an I/O error occurs */ public static TraceColorRepository createFromFile(final String fileName, final IProjectContext projectContext) throws IOException { final Configuration configuration = new Configuration(); configuration.setProperty(CONFIG_PROPERTY_NAME_TRACE_COLOR_FILE_NAME, fileName); return new TraceColorRepository(configuration, TraceColorRepository.readDataFromFile(fileName), projectContext); }
private void initialize() { final TraceColorRepository colorRepository = (TraceColorRepository) super.getRepository(COLOR_REPOSITORY_PORT_NAME); this.colorMap = colorRepository.getColorMap(); this.defaultColor = colorRepository.getDefaultColor(); this.collisionColor = colorRepository.getCollisionColor(); }
final String colorSpecification = parts[1]; final Color traceColor = TraceColorRepository.parseColor(colorSpecification); final Long traceId = TraceColorRepository.parseTraceId(traceName);
private static TraceColorRepository prepareTraceColorRepository(final AnalysisController analysisController) { final ConcurrentMap<Long, Color> colorMap = new ConcurrentHashMap<Long, Color>(); colorMap.put(TRACE_ID_1, HIGHLIGHT_COLOR); colorMap.put(TRACE_ID_2, HIGHLIGHT_COLOR_2); final TraceColorRepositoryData repositoryData = new TraceColorRepositoryData(colorMap, DEFAULT_COLOR, COLLISION_COLOR); return new TraceColorRepository(new Configuration(), repositoryData, analysisController); }
/** * Creates a new description repository using the given configuration. * * @param configuration * The configuration to use * @param projectContext * The project context for this plugin. * * @throws IOException * If an I/O error occurs during initialization */ public TraceColorRepository(final Configuration configuration, final IProjectContext projectContext) throws IOException { this(configuration, TraceColorRepository.readDataFromFile(configuration.getStringProperty(CONFIG_PROPERTY_NAME_TRACE_COLOR_FILE_NAME)), projectContext); }
/** * {@inheritDoc} */ @Override protected IOriginRetentionPolicy getDesiredOriginRetentionPolicy() throws AnalysisConfigurationException { final TraceColorRepository colorRepository = (TraceColorRepository) super.getRepository(COLOR_REPOSITORY_PORT_NAME); final Set<TraceInformation> desiredTraces = new HashSet<>(); for (final Long traceId : colorRepository.getColorMap().keySet()) { desiredTraces.add(new TraceInformation(traceId, null)); } return SpecificOriginRetentionPolicy.createInstance(desiredTraces); } }
private static <P extends AbstractPlugin & IGraphOutputtingFilter<?>> TraceColoringFilter<?, ?> createTraceColoringFilter( final P predecessor, final String coloringFileName, final AnalysisController controller) throws IOException, IllegalStateException, AnalysisConfigurationException { final TraceColorRepository colorRepository = TraceColorRepository.createFromFile(coloringFileName, controller); @SuppressWarnings("rawtypes") final TraceColoringFilter<?, ?> coloringFilter = new TraceColoringFilter(new Configuration(), controller); PerformAnalysis.connectGraphFilters(predecessor, coloringFilter, controller); controller.connect(coloringFilter, TraceColoringFilter.COLOR_REPOSITORY_PORT_NAME, colorRepository); return coloringFilter; }