public static void clearNonViralNameParser() {\r
nonViralNameParser = null;\r
}\r
+\r
\r
/**\r
* Takes a raw string, returns a brand spanking new name object.\r
- * <p>\r
- * If no nomenclatural code is specified, the code specified in user preferences\r
- * is used, i.e. if the preferred code is ICBN, a <code>BotanicalName</code> is returned; \r
- * if it's ICZN, a <code>ZoologicalName</code> is returned.\r
- * </p>\r
+ * \r
+ * Will take the nomenclatural code, that is currently set in preferences\r
* \r
* @param fullReference\r
- * @param nomCode\r
- * @param rank\r
* @return\r
*/\r
- public static TaxonNameBase parseFullReference(String fullReference,\r
- NomenclaturalCode nomCode, Rank rank) {\r
+ @Deprecated\r
+ public static TaxonNameBase parseFullReference(String fullReference) {\r
+ \r
+ NomenclaturalCode nomCode = PreferencesUtil.getPreferredNomenclaturalCode();\r
\r
- if (nomCode == null) {\r
- nomCode = PreferencesUtil.getPreferredNomenclaturalCode();\r
- }\r
\r
TaxonNameBase name = getNonViralNameParser().parseReferencedName(fullReference,\r
- nomCode, rank);\r
+ nomCode, null);\r
\r
if (name.hasProblem()) {\r
name.setFullTitleCache(fullReference);\r
\r
return name;\r
}\r
+ \r
+ public static TaxonNameBase createEmptyName(){\r
+ return getNonViralNameParser().parseReferencedName("",\r
+ PreferencesUtil.getPreferredNomenclaturalCode(), null);\r
+ }\r
+ \r
+ /**\r
+ * Desired method\r
+ * \r
+ * @param unparsedNameString\r
+ * @param rank\r
+ * @return\r
+ */\r
+ public static TaxonNameBase parseReferencedName(String unparsedNameString, Rank rank){\r
+ NomenclaturalCode nomCode = PreferencesUtil.getPreferredNomenclaturalCode();\r
+ \r
+ TaxonNameBase name = getNonViralNameParser().parseReferencedName(unparsedNameString,\r
+ nomCode, rank);\r
+\r
+ if (name.hasProblem()) {\r
+ name.setFullTitleCache(unparsedNameString);\r
+ }\r
+ \r
+ return name;\r
+ }\r
\r
/**\r
* Takes an existing name object and a string, returns the same name\r
* object with the fields parsed from the string.\r
* \r
- * @param nameToBeFilled\r
- * @param fullReference\r
- * @param rank\r
- * @param makeEmpty\r
- * \r
+ * @param nameToBeFilled \r
+ * an existing name object\r
+ * @param fullReference \r
+ * the string containing the scientific name with authorship, year, reference etc. \r
+ * @return\r
+ * the parsed name\r
*/\r
+ @Deprecated\r
public static void parseFullReference(NonViralName nameToBeFilled, String fullReference) {\r
- \r
- Rank rank = null;\r
- boolean makeEmpty = true;\r
- \r
- // If the name already has a rank, make sure it is passed to the parser\r
- if (nameToBeFilled.getRank() != null) {\r
- rank = nameToBeFilled.getRank();\r
- }\r
\r
- getNonViralNameParser().parseReferencedName(nameToBeFilled, fullReference, rank, makeEmpty);\r
+\r
+ getNonViralNameParser().parseReferencedName(nameToBeFilled, fullReference, nameToBeFilled.getRank(), true);\r
\r
if (nameToBeFilled.hasProblem()) {\r
nameToBeFilled.setFullTitleCache(fullReference);\r
}\r
- }\r
- \r
- /**\r
- * @param nameToBeFilled\r
- * @param fullNameString\r
- * @param rank\r
- * @param makeEmpty\r
- * \r
- * TODO not used!\r
- */\r
- public static void parseFullName(NonViralName nameToBeFilled,\r
- String fullNameString, Rank rank, boolean makeEmpty) {\r
- getNonViralNameParser().parseFullName(nameToBeFilled, fullNameString,\r
- rank, makeEmpty);\r
+\r
}\r
\r
}\r