private void Convert(Framework f, FrameworkEntity e, String sourcePath, String destinationPath, TextWriter writer = null) { switch (e.type) { case FrameworkEntityType.T: { IXhtmlTypeParser parser = this.GetTypeParser(f, e, writer); TypedEntity entity = new TypedEntity(); entity.Namespace = f.name; entity.Name = e.name; entity.Nature = e.type; parser.Parse(entity, sourcePath); entity.SaveTo(destinationPath); } break; case FrameworkEntityType.C: { IXhtmlClassParser parser = this.GetClassParser(f, e, writer); ClassEntity entity = new ClassEntity(); entity.Namespace = f.name; entity.Name = e.name; entity.Nature = e.type; parser.Parse(entity, sourcePath); entity.SaveTo(destinationPath); } break; case FrameworkEntityType.P: { IXhtmlClassParser parser = this.GetProtocolParser(f, e, writer); ProtocolEntity entity = new ProtocolEntity(); entity.Namespace = f.name; entity.Name = e.name; entity.Nature = e.type; parser.Parse(entity, sourcePath); entity.SaveTo(destinationPath); } break; default: break; } }