One of the main strengths of the perl programming language


Cookies management with Perl

One of the main strengths of the Perl programming language is its support for text manipulation. In this assignment, you will use it for writing a Perl program that can manage a simplified version of the so-called "browser cookies".

These are the specifications for your Perl program:

1. The file containing your program must be named cookiemgr.pl

2. It must be invoked as: ?cookiemgr.pl cookies_file [options] ?The program must check that its first argument exists, is a file and is readable. If not, it must print an error message to the standard output and exit. The first argument is compulsory while the second argument is optional. The arguments are described in the following.

3. File cookies_filecan have any arbitrary name. It must be a file of text with the following format:
a. The file consists of an arbitrary number of lines (including, possibly, zero lines). Each line corresponds to a cookie.
b. Each line must contain three fields separated by semicolons.
c. The three fields are: name-value pair, domain and expiry date.
d. The name-value pair field must be a string with the following format: ?name=value
bothname and value are strings of minimum 1 character and maximum 20 characters ?arbitrarily chosen in ranges a-z, A-Z, 0-9.
e. The domain field is a string encoding a web address; it can contain a maximum of 100 characters from the set above, plus the period (.).
f. The expiry date field must be a string encoding a date in the dd/mm/yyyyformat.

The following example is the final specification for the format of file cookies_file: ? color=red;xyz.org.au;01/12/2013

username=Massimo;xyz.org.au;01/12/2013
fontface=bold;www.nosite.com.au;30/06/2014
color=white;www.hello.uts.edu.au;31/10/2013
username=Matt;www.nosite.com.au;30/06/2014
fonttype=Times;www.hello.uts.edu.au;01/09/2018

Important note: your program does not need to verify that file cookies_filecomplies with the specifications. You can simply assume that the file meets all the specifications given above.

4. Your program can be invoked without any options. In this case, it must only print the following string: ?Found ?Example with the example cookies_filegiven above: ?Command line: ?cookiemgr.pl cookies_fileOutput:

Found 6 cookies

In the case in which file cookies_filebe empty, your program must instead only print:

No cookies found

5. Your program can be invoked with option: -n name. In this case, it must only print the following string:

Found cookies with name
Example with the example cookies_filegiven above:
Command line:
cookiemgr.plcookies_file-n username
Output: ?
Found 2 cookies with name username
Option -n name can only be used once per command line (you can only ask for the cookies with one given name at a time).

In the case in which file cookies_filecontains no cookies with the given name, your program must instead only print:

No cookies found with name

Example with the example cookies_filegiven above:
Command line:
cookiemgr.plcookies_file-n bkgcolorOutput:
No cookies found with name bkgcolor

6. Your program can be invoked with option: -d date. In this case, it must only print the following string:

Found cookies persisting after

The string above reports the number of cookies that will still exist (i.e., persist) after the givendate.
Example with the example cookies_filegiven above:
Command line:
cookiemgr.plcookies_file-d 01/01/2014

Output:
Found 3 cookies persisting after 01/01/2014

since there are 3 cookies in the example cookies_filewhich are set to expire after the given date (those with expiry dates: 30/06/2014, 30/06/2014 and 01/09/2018, orderly).

Option -d date can only be used once per command line (you can only ask for the cookies with a given date at a time).

In the case in which file cookies_filecontains no cookies persisting after the given date, your program must instead only print:

No cookies found persisting after

Example with the example cookies_filegiven above:
Command line:
cookiemgr.plcookies_file-d 31/05/2020
Output:
No cookies found persisting after 31/05/2020

7. Your program can be invoked with option: -s. In this case, it must only print your name, surname, student ID and date of completion of your assignment, in a format of your choice. Please note that the first argument is still required.

8. The options cannot be used simultaneously. This means that your program can only be invoked in the following way: 1) with no options; 2) with option -n name; 3) with option -d date; 4) with option -s.

9. If your program is invoked with a valid first argument, but any other syntax than those specified above, it must only print the following string:
Syntax error: invalid syntax
and exit.
Example: ?Command line:
cookiemgr.plcookies_file-Z alpha
Output: ?
Syntax error: invalid syntax

10. Zip your file cookiemgr.pl into a file named USP__.zip and submit it with the modalities specified above. Several free zip utilities are available on the WWW.

Request for Solution File

Ask an Expert for Answer!!
Programming Languages: One of the main strengths of the perl programming language
Reference No:- TGS01229265

Expected delivery within 24 Hours