(final String line)
| 4255 | * ############################################################### |
| 4256 | */ |
| 4257 | private void parseTemplateLine(final String line) throws PCGParseException |
| 4258 | { |
| 4259 | if (line.charAt(IOConstants.TAG_TEMPLATESAPPLIED.length() + 1) == '[') |
| 4260 | { |
| 4261 | final PCGTokenizer tokens; |
| 4262 | |
| 4263 | try |
| 4264 | { |
| 4265 | tokens = new PCGTokenizer(line); |
| 4266 | } |
| 4267 | catch (PCGParseException pcgpex) |
| 4268 | { |
| 4269 | final String message = "Illegal Template line ignored: " + line + Constants.LINE_SEPARATOR + "Error: " |
| 4270 | + pcgpex.getMessage(); |
| 4271 | warnings.add(message); |
| 4272 | |
| 4273 | return; |
| 4274 | } |
| 4275 | |
| 4276 | PCTemplate aPCTemplate = null; |
| 4277 | |
| 4278 | Iterator<PCGElement> it = tokens.getElements().iterator(); |
| 4279 | |
| 4280 | if (it.hasNext()) |
| 4281 | { |
| 4282 | final PCGElement element = it.next(); |
| 4283 | |
| 4284 | String assoc = null; |
| 4285 | //Must deal with APPLIEDTO first (before item is added to the PC) |
| 4286 | for (final PCGElement child : element.getChildren()) |
| 4287 | { |
| 4288 | String childTag = child.getName(); |
| 4289 | if (IOConstants.TAG_NAME.equals(childTag)) |
| 4290 | { |
| 4291 | aPCTemplate = Globals.getContext().getReferenceContext() |
| 4292 | .silentlyGetConstructedCDOMObject(PCTemplate.class, EntityEncoder.decode(child.getText())); |
| 4293 | |
| 4294 | if (aPCTemplate == null) |
| 4295 | { |
| 4296 | break; |
| 4297 | } |
| 4298 | } |
| 4299 | else if (IOConstants.TAG_APPLIEDTO.equals(childTag)) |
| 4300 | { |
| 4301 | assoc = child.getText(); |
| 4302 | } |
| 4303 | } |
| 4304 | |
| 4305 | for (final PCGElement child : element.getChildren()) |
| 4306 | { |
| 4307 | final String childTag = child.getName(); |
| 4308 | |
| 4309 | if (IOConstants.TAG_NAME.equals(childTag)) |
| 4310 | { |
| 4311 | if (aPCTemplate == null) |
| 4312 | { |
| 4313 | break; |
| 4314 | } |
no test coverage detected