Class: Projects::Api::ProjectsAPI
- Defined in:
- lib/projects/api/ProjectsAPI.rb
Overview
-
ProjectsAPI is used to:
* Get list of projects.
* Get the details of a project.
* Create a new project.
* Update the details of a project.
* Delete an existing project.
Instance Method Summary collapse
-
#addProjectStatus(projectId, status) ⇒ Object
-
Add the status for the project.
-
-
#createProject(project) ⇒ Object
-
Create a new project.
-
-
#deleteProject(projectId) ⇒ Object
-
Delete an existing project.
-
-
#get(projectId) ⇒ Object
-
Get the details of a project.
-
-
#getProjectActivities(projectId, queryMap = nil) ⇒ Object
-
Get list of project activities.
-
- #getProjects(queryMap = nil) ⇒ Object
-
#getProjectStatuses(projectId, queryMap = nil) ⇒ Object
-
Get list of project statuses.
-
-
#getProjectsUrl ⇒ Object
-
Get the genearal url for getting all Projects.
-
-
#getProjectUrl(projectId) ⇒ Object
-
Get specific Project url by specifying the projectId.
-
-
#initialize(authToken, portalId) ⇒ ProjectsAPI
constructor
-
Construct a new ProjectsAPI using User’s authToken and portalId.
-
-
#updateProject(project) ⇒ Object
-
Update the details of a project.
-
Methods inherited from API
Constructor Details
#initialize(authToken, portalId) ⇒ ProjectsAPI
-
Construct a new ProjectsAPI using User’s authToken and portalId.
Parameters
- authToken
-
User’s authToken.
-
- portalId
-
User’s portalId.
-
39 40 41 |
# File 'lib/projects/api/ProjectsAPI.rb', line 39 def initialize(authToken,portalId) super(authToken,portalId) end |
Instance Method Details
#addProjectStatus(projectId, status) ⇒ Object
-
Add the status for the project.
Parameters
- projectId
-
ID of the project.
-
- status
-
Status object.
-
Returns
-
Status object.
196 197 198 199 |
# File 'lib/projects/api/ProjectsAPI.rb', line 196 def addProjectStatus(projectId,status) url = getProjectUrl(projectId)+"statuses/" return $projectParser.getStatus(ZohoHTTPClient.post(url, getQueryMap, status.toParamMAP)); end |
#createProject(project) ⇒ Object
-
Create a new project.
Parameters
- project
-
Project object.
-
Returns
-
Project object.
92 93 94 95 |
# File 'lib/projects/api/ProjectsAPI.rb', line 92 def createProject(project) createProject = ZohoHTTPClient.post(getProjectsUrl,getQueryMap, project.toParamMAP) return $projectParser.getProject(createProject) end |
#deleteProject(projectId) ⇒ Object
-
Delete an existing project.
Parameters
- projectId
-
ID of the project.
-
Returns
-
String object.
137 138 139 140 |
# File 'lib/projects/api/ProjectsAPI.rb', line 137 def deleteProject(projectId) response = ZohoHTTPClient.delete(getProjectUrl(projectId),getQueryMap) return $projectParser.getResult(response) end |
#get(projectId) ⇒ Object
-
Get the details of a project.
Parameters
- projectId
-
ID of the project.
-
Returns
-
Project object.
107 108 109 110 |
# File 'lib/projects/api/ProjectsAPI.rb', line 107 def get(projectId) response = ZohoHTTPClient.get(getProjectUrl(projectId),getQueryMap) return $projectParser.getProject(response) end |
#getProjectActivities(projectId, queryMap = nil) ⇒ Object
-
Get list of project activities.
Parameters
- projectId
-
ID of the project.
-
- queryMap
-
This queryMap contains the filters in the form of key-value pair.
-
Returns
-
List of Activity object.
154 155 156 157 158 159 160 161 |
# File 'lib/projects/api/ProjectsAPI.rb', line 154 def getProjectActivities(projectId, queryMap=nil) url = getProjectUrl(projectId)+"activities/" if queryMap == nil return $projectParser.getActivities(ZohoHTTPClient.get(url, getQueryMap)) else return $projectParser.getActivities(ZohoHTTPClient.get(url, getQueryMap(queryMap))) end end |
#getProjects(queryMap = nil) ⇒ Object
74 75 76 77 78 79 80 |
# File 'lib/projects/api/ProjectsAPI.rb', line 74 def getProjects(queryMap=nil) if queryMap == nil return $projectParser.getProjects(ZohoHTTPClient.get(getProjectsUrl,getQueryMap)) else return $projectParser.getProjects(ZohoHTTPClient.get(getProjectsUrl,getQueryMap(queryMap))) end end |
#getProjectStatuses(projectId, queryMap = nil) ⇒ Object
-
Get list of project statuses.
Parameters
- projectId
-
ID of the project.
-
- queryMap
-
This queryMap contains the filters in the form of key-value pair.
-
Returns
-
List of Status object.
175 176 177 178 179 180 181 182 |
# File 'lib/projects/api/ProjectsAPI.rb', line 175 def getProjectStatuses(projectId,queryMap=nil) url = getProjectUrl(projectId)+"statuses/" if queryMap == nil return $projectParser.getStatuses(ZohoHTTPClient.get(url, getQueryMap)) else return $projectParser.getStatuses(ZohoHTTPClient.get(url, getQueryMap(queryMap))) end end |
#getProjectsUrl ⇒ Object
-
Get the genearal url for getting all Projects.
Returns
String Object
49 50 51 |
# File 'lib/projects/api/ProjectsAPI.rb', line 49 def getProjectsUrl return getBaseURL+'projects/' end |
#getProjectUrl(projectId) ⇒ Object
-
Get specific Project url by specifying the projectId.
Returns
String Object
59 60 61 |
# File 'lib/projects/api/ProjectsAPI.rb', line 59 def getProjectUrl(projectId) return getBaseURL+'projects/'+String(projectId)+'/' end |
#updateProject(project) ⇒ Object
-
Update the details of a project.
Parameters
- project
-
Project object.
-
Returns
-
Project object.
122 123 124 125 |
# File 'lib/projects/api/ProjectsAPI.rb', line 122 def updateProject(project) updateProject = ZohoHTTPClient.post(getProjectUrl(project.getId),getQueryMap, project.toParamMAP) return $projectParser.getProject(updateProject) end |