Beispiel #1
0
	def post(self):
		"""Add a new Source to the database.
		
		Only the server may utilize this method.
		
		required parameters in post:
			_id
			package_name
			package_content
		"""
		
		res = ServerResponse()		
		params = parseRequest(self.request.body)
		
		if params is not None:
			source = ICSource(inflate={'_id' : params['_id']})
			if source.addFile(params['package_name'], params['package_content']):				
				if source.importAssets(params['package_name']):
					res.result = 200
					res.data = source.emit()
				else:
					source.invalidate(
						invalidate['codes']['source_invalid_public_credentials'],
						invalidate['reasons']['source_invalid_public_credentials']
					)
					res.reason = source.invalid
			
		self.write(res.emit())
Beispiel #2
0
	def get(self, _id):
		res = Res()
		
		if passesParameterFilter(_id):
			source = ICSource(_id=_id)
			print len(_id)
			
			if not hasattr(source, "invalid"):
				res.data = source.emit()
				res.result = 200
			else:
				res.reason = source.invalid
				
		self.finish(res.emit())
Beispiel #3
0
	def get(self, _id):
		res = Res()
		
		if passesParameterFilter(_id):
			source = ICSource(_id=_id)
			print len(_id)
			
			if not hasattr(source, "invalid"):
				res.data = source.emit()
				res.result = 200
			else:
				res.reason = source.invalid
				
		self.finish(res.emit())
Beispiel #4
0
	def post(self, _id):
		res = Res()
		
		if passesParameterFilter(_id):
			source = ICSource(_id=_id)
			
			for k,v in parseRequest(self.request.body).iteritems():
				if k not in source.locked_fields:
					setattr(source, k, v)
			
			if source.save():
				res.data = source.emit()
				res.result = 200
			
		self.finish(res.emit())
Beispiel #5
0
	def post(self, _id):
		res = Res()
		
		if passesParameterFilter(_id):
			source = ICSource(_id=_id)
			
			for k,v in parseRequest(self.request.body).iteritems():
				if k not in source.locked_fields:
					setattr(source, k, v)
			
			if source.save():
				res.data = source.emit()
				res.result = 200
			
		self.finish(res.emit())
Beispiel #6
0
	def get(self, source_id):
		"""Returns the specified Source.
		
		required:
			_id
		"""
		res = ServerResponse()
		
		if passesParameterFilter(source_id):
			source = ICSource(_id = source_id)
			
			if not hasattr(source, 'invalid'):
				res.data = source.emit()
				res.result = 200
			else:
				res.reason = source.invalid
		
		self.write(res.emit())