@Override
	public AbstractComponent parse(String string) throws BookParseException {
		if (string == null) {
			throw new BookParseException("String is null");
		}
		try {
			TextComponent component = (TextComponent) factory
					.newComponent(EComponentType.CODE_LINE);
			for (String s : string.split("")) {
				if (!s.equals("")) {
					component.addComponent(new CharacterParser().parse(s));
				}
			}
			return component;
		} catch (ComponentException e) {
			throw new BookParseException("Code line parsing failed", e);
		}
	}