def retrieveAfter(self,**_RetrievingVariablesDict):

		#debug
		print('Joiner retrieveAfter method')
		print('self.RetrievedFilteredRowedDictsList is ')
		SYS._print(self.RetrievedFilteredRowedDictsList)
		print('self.JoinedRetrievingIndexesListsList is ')
		SYS._print(self.JoinedRetrievingIndexesListsList)
		print('self.JoinedJoinedListKeyStr is ')
		SYS._print(self.JoinedJoinedListKeyStr)
		print('')

		#Rebound the RetrievedFilteredRowedDictsList
		self.RetrievedFilteredRowedDictsList=filter(
														lambda __Variable:
														__Variable!=None,
														SYS.where(
							self.RetrievedFilteredRowedDictsList,
							self.JoinedRetrievingIndexesListsList
							)
						)

		#debug
		print('self.RetrievedFilteredRowedDictsList is ')
		SYS._print(self.RetrievedFilteredRowedDictsList)
		print('')
	def findAfter(self,**_FindingVariablesDict):

		#debug
		self.debug('Start of the method')

		#debug
		self.debug(
					[
						('Are we going to do a where with the FoundFilteredRowedDictsList and the '),
						('filtering JoinedFindingTuplesList?'),
						('self.ModeledDict ',self.ModeledDict,[
																'ModelStr',
																'FoundFilteredRowedDictsList'
																]),
						("'JoinedFindingTuplesList' in self.ModeledDict is "+str(
							'JoinedFindingTuplesList' in self.ModeledDict))
					]
			)

		if 'JoinedFindingTuplesList' in self.ModeledDict:

			#debug
			self.debug(
						[
							'Ok we are going to do the where',
							"self.ModeledDict['JoinedFindingTuplesList'] is "+str(
								self.ModeledDict['JoinedFindingTuplesList'])
						]
					)

			#Where
			self.ModeledDict['FoundFilteredRowedDictsList']=SYS.filterNone(SYS.where(
							self.ModeledDict['FoundFilteredRowedDictsList'],
							self.ModeledDict['JoinedFindingTuplesList']
							)
			)

			#debug
			self.debug('Ok the where is done.')

		#debug
		self.debug(
					[
						'After intersection',
						('self.ModeledDict ',self.ModeledDict,[
															'ModelStr',
															'FoundFilteredRowedDictsList'
															]
														)
					]
				)

		#debug
		self.debug('End of the method')
Exemplo n.º 3
0
	def do_find(self):

		#debug
		'''
		self.debug(
			[
				'we are going to find',
				("self.",self,[
						'FindingWhereVariable'
					])
			]
		)
		'''

		#/###################/#
		# Case of mongo
		#

		#If the FoundMongoIsBool was not yet setted
		if self.FoundMongoIsBool==False:

			#debug
			'''
			self.debug(
				[
					'FoundMongoRowDictsList was not yet setted'
				]
			)
			'''
			
			#Check
			if self.ModelMongoBool:

				#find in the list
				self.FoundMongoRowDictsList=list(
					self.ModeledMongoCollection.find(
						self.FindingWhereVariable
					)
				)
				
				#set
				self.FoundMongoIsBool=True

				#debug
				'''
				self.debug(
							[
								("self.",self,['FoundMongoRowDictsList'])
							]
						)
				'''

		#/###################/#
		# Case of hdf
		#

		#If the FoundHdfIsBool was not yet setted
		if self.FoundHdfIsBool==False:

			#debug
			'''
			self.debug(
				[
					'FoundHdfRowDictsList was not yet setted',
				]
			)
			'''

			#Check
			if self.ModelHdfBool:

				#Take the first one in the list
				self.FoundHdfRowDictsList=Rower.getRowedDictsListWithTable(
					#self.TabularedHdfGroupVariable._f_getChild(
					#	self.TabularedHdfKeyStrsList[0]
					#)
					self.ModeledHdfTable
				)

				#set
				self.FoundHdfIsBool=True

				#debug
				'''
				self.debug(
								[
									("self.",self,['FoundHdfRowDictsList'])
								]
						)
				'''

				#Now we find with a condition Tuples list 
				self.FoundHdfRowDictsList=SYS.filterNone(
					SYS.where(
						self.FoundHdfRowDictsList,
						self.FindingWhereVariable
					)
				)

		#debug
		'''
		self.debug(
					[
						'The where is over now',
						("self.",self,['FoundFilterRowDictsList'])
					]

				)
		'''

		#/##################/#
		# Maybe recover
		#

		#Check
		if self.FindingRecoverBool:

			#Check
			if len(self.FoundMongoRowDictsList)==1:

				#get
				self.FoundRecoverDict=self.FoundMongoRowDictsList[0]

			elif len(self.FoundHdfRowDictsList)==1:

				#get
				self.FoundRecoverDict=self.FoundHdfRowDictsList[0]

			#debug
			'''
			self.debug(
						[
							'Now we update with the self.RecoveredDict',
							'self.RecoveredDict is '+str(self.RecoveredDict)
						]
					)
			'''

			#set the RetrievingIndexesList and retrieve
			self.RetrievingIndexIntsList=[
											0,
											self.FoundRecoverDict['RowInt']
										]
		

			#debug
			'''
			self.debug(
						[
							('self.',self,['RetrievingIndexIntsList'])
						]
					)
			'''
			
			#Now we can retrieve
			self.retrieve()
Exemplo n.º 4
0
	def do_merge(self):

		#Check
		if self.ModelingHdfBool:

			#debug
			'''
			self.debug(
						('self.',self,[
											'ModeledKeyStr',
											'MergingConditionVariable',
											'TabularedTableKeyStrsList'
										])
					)
			'''

			#Debug
			'''
			print(

					map(
								lambda __TabularedKeyStr:
							__TabularedKeyStr.split(Shaper.ShapingJoiningStr),
							self.TabularedTableKeyStrsList
						)
				)
			'''
			
			#Bind with MergedShapingDictsList setting
			MergedShapingDictsList=map(
									lambda __StrsList:
									dict(
										map(
												lambda __ShapingStr:
												SYS.getUnSerializedTuple(
													self.NodePointDeriveNoder,
													__ShapingStr.split(
														Shaper.ShapingTuplingStr
													)
												)
												#Remove the suffix and the prefix
												,__StrsList[1:-1] if len(__StrsList)>2 else []
											)
									),
									map(
										lambda __TabularedKeyStr:
										__TabularedKeyStr.split(Shaper.ShapingJoiningStr),
										self.TabularedTableKeyStrsList
									)
							)

			#debug
			'''
			self.debug('MergedShapingDictsList is '+str(MergedShapingDictsList))
			'''

			#Bind with MergedFilteredShapingDictsList
			MergedFilteredShapingDictsList=SYS.where(
										MergedShapingDictsList,
										self.MergingConditionVariable
										)

			#debug
			'''
			self.debug('MergedFilteredShapingDictsList is '+str(MergedFilteredShapingDictsList))
			'''

			#Bind with MergedTablesList setting
			MergedTablesList=SYS.filterNone(
										map(
												lambda __Table,__MergedFilteredShapingDict:
												__Table
												if __MergedFilteredShapingDict!=None
												else None,
												self.TabularedTablesOrderedDict.values(),
												MergedFilteredShapingDictsList
										))
									
			MergedRowedDictsListsList=map(
					lambda __MergedTable:
					map(
							lambda __RowedDict:
							dict(__RowedDict,**{
									'TabledInt':int(
													__MergedTable.name.split(Tabler.TablingOrderStr)[1]
												)
								}
							),
							Rower.getRowedDictsListWithTable(__MergedTable)
						),
					MergedTablesList
				)

			#debug
			'''
			self.debug('MergedRowedDictsListsList is '+str(MergedRowedDictsListsList))
			'''
			
			#Reduce
			if len(MergedRowedDictsListsList)>0:
				self.MergedRowedDictsList=reduce(operator.__add__,MergedRowedDictsListsList)