/** * Parse the CATALOG command. * <p/> * CATALOG [media-catalog-number] * CD catalog number. Code follows UPC/EAN rules. * Usually the first command, but this is not required. Not a mandatory command. * * @param input */ private static void parseCatalog(final LineOfInput input) { CueParser.logger.entering(CueParser.class.getCanonicalName(), "parseCatalog(LineOfInput)", input); if (startsWith(input, "CATALOG")) { String catalogNumber = input.getInput().substring("CATALOG".length()).trim(); if (!PATTERN_CATALOG_NUMBER.matcher(catalogNumber).matches()) { addWarning(input, WARNING_INVALID_CATALOG_NUMBER); } if (input.getAssociatedSheet().getCatalog() != null) { addWarning(input, WARNING_DATUM_APPEARS_TOO_OFTEN); } input.getAssociatedSheet().setCatalog(catalogNumber); } else { addWarning(input, WARNING_UNPARSEABLE_INPUT); } CueParser.logger.exiting(CueParser.class.getCanonicalName(), "parseCatalog(LineOfInput)"); }
addAttribute(cueSheetElement, "discid", cueSheet.getDiscid()); addAttribute(cueSheetElement, "comment", cueSheet.getComment()); addAttribute(cueSheetElement, "catalog", cueSheet.getCatalog()); addAttribute(cueSheetElement, "performer", cueSheet.getPerformer()); addAttribute(cueSheetElement, "title", cueSheet.getTitle());
result = this.getCatalog()==null?"":this.getCatalog(); break; case CDTEXTFILE:
/** * Serialize the CueSheet. * * @param builder The StringBuilder to serialize to. * @param cueSheet The CueSheet to serialize. * @param indentation The current indentation. */ private void serializeCueSheet(final StringBuilder builder, final CueSheet cueSheet, final String indentation) { CueSheetSerializer.logger.entering (CueSheetSerializer.class.getCanonicalName() , "serializeCueSheet(StringBuilder,CueSheet,String)" , new Object[]{builder, cueSheet, indentation} ); CueSheetSerializer.logger.fine("Serializing cue sheet to cue format."); addField(builder, "REM GENRE", indentation, cueSheet.getGenre()); addField(builder, "REM DATE", indentation, cueSheet.getYear()); addField(builder, "REM DISCID", indentation, cueSheet.getDiscid()); addField(builder, "REM COMMENT", indentation, cueSheet.getComment()); addField(builder, "CATALOG", indentation, cueSheet.getCatalog()); addField(builder, "PERFORMER", indentation, cueSheet.getPerformer()); addField(builder, "TITLE", indentation, cueSheet.getTitle()); addField(builder, "SONGWRITER", indentation, cueSheet.getSongwriter()); addField(builder, "CDTEXTFILE", indentation, cueSheet.getCdTextFile()); for (FileData fileData : cueSheet.getFileData()) { serializeFileData(builder, fileData, indentation); } CueSheetSerializer.logger.exiting (CueSheetSerializer.class.getCanonicalName(), "serializeCueSheet(StringBuilder,CueSheet,String)"); }