/******************************************************************************* * This file is protected by Copyright. * Please refer to the COPYRIGHT file distributed with this source distribution. * * This file is part of REDHAWK IDE. * * All rights reserved. This program and the accompanying materials are made available under * the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html *******************************************************************************/ // BEGIN GENERATED CODE package gov.redhawk.ide.sad.generator.newwaveform; import gov.redhawk.ide.codegen.util.ProjectCreator; import gov.redhawk.ide.sad.generator.newwaveform.GeneratorArgs; import mil.jpeojtrs.sca.spd.SoftPkg; import mil.jpeojtrs.sca.util.DceUuidUtil; import java.util.UUID; import java.util.HashMap; public class SadFileTemplate { protected static String nl; public static synchronized SadFileTemplate create(String lineSeparator) { nl = lineSeparator; SadFileTemplate result = new SadFileTemplate(); nl = null; return result; } public final String NL = nl == null ? (System.getProperties().getProperty("line.separator")) : nl; protected final String TEXT_1 = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" + NL + "<!DOCTYPE softwareassembly PUBLIC \"-//JTRS//DTD SCA V2.2.2 SAD//EN\" \"softwareassembly.dtd\">" + NL + "<softwareassembly id=\""; protected final String TEXT_2 = "\" name=\""; protected final String TEXT_3 = "\">"; protected final String TEXT_4 = NL + " <componentfiles>" + NL + " <componentfile id=\""; protected final String TEXT_5 = "\" type=\"SPD\">" + NL + " <localfile name=\""; protected final String TEXT_6 = "\"/>" + NL + " </componentfile>" + NL + " </componentfiles>" + NL + " <partitioning>" + NL + " <componentplacement>" + NL + " <componentfileref refid=\""; protected final String TEXT_7 = "\"/>" + NL + " <componentinstantiation id=\""; protected final String TEXT_8 = "\">" + NL + " <usagename>"; protected final String TEXT_9 = "_1</usagename>" + NL + " <findcomponent>" + NL + " <namingservice name=\""; protected final String TEXT_10 = "_1\"/>" + NL + " </findcomponent>" + NL + " </componentinstantiation>" + NL + " </componentplacement>" + NL + " </partitioning>" + NL + " <assemblycontroller>" + NL + " <componentinstantiationref refid=\""; protected final String TEXT_11 = "\"/>" + NL + " </assemblycontroller>"; protected final String TEXT_12 = NL + " <partitioning/>" + NL + " <assemblycontroller/>"; protected final String TEXT_13 = NL + "</softwareassembly>"; protected final String TEXT_14 = NL; /** * {@inheritDoc} */ public String generate(Object argument) { final StringBuffer stringBuffer = new StringBuffer(); GeneratorArgs args = (GeneratorArgs)argument; SoftPkg assemblyController = null; HashMap<SoftPkg, String> comToId = new HashMap<SoftPkg, String>(); String assemblyId = null; String usageName = null; if (args.getAssemblyController() != null) { assemblyController = args.getAssemblyController(); usageName = ProjectCreator.getBaseFileName(assemblyController.getName()); comToId.put(assemblyController, usageName + "_" + UUID.randomUUID()); assemblyId = usageName + "_1"; } stringBuffer.append(TEXT_1); stringBuffer.append(args.getWaveformId()); stringBuffer.append(TEXT_2); stringBuffer.append(args.getWaveformName()); stringBuffer.append(TEXT_3); if (assemblyController != null) { stringBuffer.append(TEXT_4); stringBuffer.append(comToId.get(assemblyController)); stringBuffer.append(TEXT_5); stringBuffer.append(assemblyController.eResource().getURI().path()); stringBuffer.append(TEXT_6); stringBuffer.append(comToId.get(assemblyController)); stringBuffer.append(TEXT_7); stringBuffer.append(assemblyId); stringBuffer.append(TEXT_8); stringBuffer.append(usageName); stringBuffer.append(TEXT_9); stringBuffer.append(usageName); stringBuffer.append(TEXT_10); stringBuffer.append(assemblyId); stringBuffer.append(TEXT_11); } else { stringBuffer.append(TEXT_12); } stringBuffer.append(TEXT_13); stringBuffer.append(TEXT_14); return stringBuffer.toString(); } }