Skip to content

AnnaManchester/cs_130a

Repository files navigation

Autour: 
Anna Luo

---------------------------
1. Implementation:
In this part, functionalities for a user to post on a friend’s wall are available. As for responses, no separate class is generated. Instead, they are still in the form of Wallposts, but with an extra flag indicating whether it’s a response. Each response has a post parent.
Degree of separation between two users is be found via BFS traversal. A user is also available to find all users with certain degree of separation.
A generator is written to generate fake user data. 


-------------------------
2. How to compile:
In this folder, type "make" to compile.
An executable "run" will be generated.
type "make gen” to compile fake user data generator. Type “./gen > fakedata“ to create and save a fake user data. Total number of users is set as 10000, each user has 1% chance to be friend with another user. Password for every user is set as “root”.


--------------------------
3. How to run:
An example of network user data is included in this folder, called "userdata". Type "./run userdata" to load the data and start playing.
Type "./run fakedata” for the large data.

Users can type commands to:
1. Create a user
2. Log in
3. Quit

In userdata,
There are three pre-defined users in "userdata": Leonard, Sheldon, Amy. 
Their passords are all "root".

When a user is authorized, he/she can choose the follwing operations:
1.Dis: show all posts of this user.
2.Add: add post
3.Reply: Reply to a post
4.Del: delete post
5.Save: dump user data to a file
6.Read: read user data from a file
7.Search: search users by name
8.AddFriend: add a friend by his/her username
9.ShowFriends: show current friends list
10.DeFriend: delete a friend by his/her username
11.ShowRequests: show all pending friend requests
12.Approve: approve a friend request
13.Ignore: ignore a friend request (request deleted after this)
14.PostTo: create a new post on a friend’s wall
15.ShowDist: show distance to another user
16.SearchDist: show all users with certain degree of separation
17.Quit: log out

---------------------------
4. For data format, check “fakedata".
When the contents of a user are updated, his/her current file can be dumped to a file. The entire dataset is updated before Quit.


---------------------------
5. Limitation:
Some keywords are currently used to format the data. Those keywords should not be include in wall posts.
Keywords:
USERNAME,PASSWORD,FRIEND,BIRTHDAY,REALNAME,POST_CONTENT,POST_AUTHOR,DOMAIN_NAME,RESPONSE_AUTHOR,RESPONSE_CONTENT,CREATION_TIME. 
Multiple responses can be added under one post, but replies between responses are not available.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published