def _copySessionToForm(self, session): """ Converts a session object into a session_form message :param session: A session object :return: session_form """ session_form = SessionForm() exclusions = ['typeOfSession', 'speaker'] session_form = ndb_to_message(session, session_form, exclusions) if session.typeOfSession: session_form.typeOfSession = SessionType(session.typeOfSession) if session.speaker: session_form.speaker = self._getSpeakerFormFromWsKey( session.speaker) session_form.check_initialized() return session_form
def createSpeaker(self, request): """ Create a speaker """ # Make sure the user is logged in. user = endpoints.get_current_user() if not user: raise endpoints.UnauthorizedException('Authorization required.') user_id = getUserId(user) user_key = ndb.Key(Profile, user_id) # Create the Speaker object speaker = Speaker() # Copy the fields from the request to the Speaker speaker = message_to_ndb(request, speaker) # Allocate the Speaker id and set the key with the User as parent speaker_id = speaker.allocate_ids(size=1, parent=user_key)[0] speaker.key = ndb.Key(Speaker, speaker_id, parent=user_key) # Write the speaker to the db speaker.put() # Create a SpeakerForm and copy the fields from the request speaker_form = SpeakerForm() speaker_form = ndb_to_message(speaker, speaker_form) # Send back the SpeakerForm including the websafe key return speaker_form
def _copySpeakerToForm(self, speaker): """ Copies the fields from a Speaker object to a Speaker message """ speaker_form = SpeakerForm() speaker_form = ndb_to_message(speaker, speaker_form) speaker_form.check_initialized() return speaker_form