public void update(String line, LineStatus status, Scanner fileScan) throws IOException
	{
		ArrayList<UrlCard> allUrls = UrlCard.getAllUrls();
		boolean isUrlObjectComplete = false;

		do {
					
			switch (status)
			{
				case BlankLine: 	{
										isUrlObjectComplete = true;
									}
										break;

				case TitleLine: 	{
										allUrls.add(new UrlCard(line)); //invokes new object (should it be 'invoke' method)
										iterate(fileScan);
										isUrlObjectComplete = true; //'recursive base case' to eventually break out of loop
									}
										break;

				case UrlLine: 		{
										int i = allUrls.size() - 1;
										UrlCard url = allUrls.get(i);
										url.setUrl(line);
										iterate(fileScan);
										isUrlObjectComplete = true; //'recursive base case' to eventually break out of loop
									}
										break;

				case CategoryLine: 	{
										int i = allUrls.size() - 1;
										UrlCard url = allUrls.get(i);
										url.setCategory(CategoryParser.clean(line));
										Parser category = new CategoryParser();
										category.update(line, status, fileScan);
										iterate(fileScan);
										isUrlObjectComplete = true; //'recursive base case' to eventually break out of loop
									}
										break;

				case TodoLine: 		{
										int i = allUrls.size() - 1;
										UrlCard url = allUrls.get(i);
										url.setTodo(TodoParser.clean(line));
										iterate(fileScan);
										isUrlObjectComplete = true; //'recursive base case' to eventually break out of loop
									}
										break;

				case NoteLine: 		{
										int i = allUrls.size() - 1;
										UrlCard url = allUrls.get(i);
										url.setNotes(NoteParser.clean(line));
										iterate(fileScan);
										isUrlObjectComplete = true; //'recursive base case' to eventually break out of loop
									}
										break;		

				case OtherLine: 	{
										Ui userInterface = new UiCli();
										userInterface.warningMessage(MessageType.ProblemParsingManifest);
										isUrlObjectComplete = true; //'recursive base case' to eventually break out of loop
									}
										break;
			}

		} while(isUrlObjectComplete==false);

		//--> concider adding variable here to feed a progress bar or increment to show how many have been entered into main memory
	}