def make_published_resource(block, block_cell_name): if isinstance(block_cell_name, basestring): moduleCellName = BlockCellName(block_cell_name) sr = SimpleCell(block_cell_name) sr.type = BiiType.from_extension(moduleCellName.extension) sr.ID = UserID(1) + 1 + 2 return sr
def make_simple_cell(block_cell_name, hive=None): if isinstance(block_cell_name, basestring): block_cell_name = BlockCellName(block_cell_name) cell = SimpleCell(block_cell_name) cell.type = BiiType.from_extension(block_cell_name.extension) if hive: changes = ProcessorChanges() changes.upsert(cell.name, cell, None) hive.update(changes) return cell
def _process_leaves(self, virtual_cell, realizations, biiout): '''for a virtual cell, creates the leaves if they don't exist @param virtual_cell: the cell that serves as base @param realizations: a set to add the leaves BlockCellNames @param biiout: biiout ''' block_cell_name = virtual_cell.name for leave in virtual_cell.resource_leaves: realizations.add(leave) try: cell = self.block_holder[leave.cell_name].cell except KeyError: #The leave it is pointing does not exist biiout.info('%s virtual realization not existing, creating it' % leave) cell = SimpleCell(leave) cell.type = virtual_cell.type content = Content(leave, Blob(""), created=True) content.parser = parser_factory(cell.type, cell.name.cell_name) self.block_holder.add_resource(Resource(cell, content)) cell.container = block_cell_name
def make_simple_cell(block_cell_name): if isinstance(block_cell_name, basestring): block_cell_name = BlockCellName(block_cell_name) cell = SimpleCell(block_cell_name) cell.type = BiiType.from_extension(block_cell_name.extension) return cell