예제 #1
0
StatusCode QueryOperatorImpl::LoadCollectionQuery(QueryNodeImpl* target)
{
#if 0
	ClearMCATScratch();
	m_selval[DATA_GRP_NAME] = 1;

	INode* ptr = target;
	IMetadataNode* ptr_meta;

	int count = 0;

	StatusCode status;

	while(WINI_QUERY == ptr->GetType())
	{
		ptr_meta = (IMetadataNode*)ptr->GetChild(0);

		status = LoadCollectionQuery2(ptr_meta, count);

		if(!status.isOk())
			break;

		ptr = ptr->GetParent();

		if(NULL == ptr)
			break;
	}

	return status;
#endif
	return WINI_ERROR;
}
예제 #2
0
StatusCode QueryOperatorImpl::Fetch(QueryNodeImpl* target)
{
	return WINI_ERROR;
#if 0
	//the equal thing will only ever return either 1 or 0 so it should have special instance
	//also because when you subtract the collection name from itself it's null

	m_binding = NULL; //reset in case the same operator is used to perform different queries

	if(NULL == target)
		return WINI_ERROR;

	INode* blah = target->GetParent();

	while(NULL != blah)
	{
		if(WINI_QUERY == blah->GetType())
		{
			blah = blah->GetParent();
		}else
		{
			m_binding = blah;
			blah = NULL;
		}
	}

	if(NULL == m_binding)
		return WINI_ERROR;

	if(WINI_COLLECTION != m_binding->GetType())
		return WINI_ERROR;

	StatusCode status = FetchCollections(target);

	//if(status.isOk())
	//	FetchDatasets(QueryNodeImpl* target);

	return status;
#endif
}