Class: Projects::Api::ProjectsAPI
- Inherits:
-
API
- Object
- API
- Projects::Api::ProjectsAPI
show all
- Includes:
- Parser, Util
- 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
Methods inherited from API
#getBaseURL, #getQueryMap
Constructor Details
#initialize(authToken, portalId) ⇒ ProjectsAPI
- Construct a new ProjectsAPI using User's authToken and portalId.
Parameters
- * authToken
- * 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
- * status
Returns
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
Parameters
- * project
Returns
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
Returns
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
Returns
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
- * queryMap
- This queryMap contains the filters in the form of key-value pair.
Returns
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
- * queryMap
- This queryMap contains the filters in the form of key-value pair.
Returns
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
Returns
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
|