import java.io.Serializable; //导入方法依赖的package包/类
protected void assertVirtualNode(NodeRef nodeRef, Map expectedProperties)
{
assertNotNull(Reference.fromNodeRef(nodeRef));
assertTrue(nodeService.hasAspect(nodeRef,
VirtualContentModel.ASPECT_VIRTUAL));
Set aspects = nodeService.getAspects(nodeRef);
assertTrue("Smart virtual node missing virtual aspect",aspects.contains(VirtualContentModel.ASPECT_VIRTUAL));
//ACE-5303 injected properties title and description require the titled aspect
assertTrue("Smaft virtual node missing titled aspect",aspects.contains(ContentModel.ASPECT_TITLED));
Map nodeProperties = nodeService.getProperties(nodeRef);
List mandatoryProperties = Arrays.asList(ContentModel.PROP_STORE_IDENTIFIER,
ContentModel.PROP_STORE_PROTOCOL,
ContentModel.PROP_LOCALE,
ContentModel.PROP_MO