Problem with AssetPostprocessor

I have class which extends AssetPostprocessor. I put my class code file inside my project’s Editor folder.
I have put logging statements on each of the overriden event handlers. Nothing seems to be logged. Do I need to make an instance of the MyPostProcessor class ?

using System;
using System.IO;
using UnityEngine;
using UnityEditor;
using System.Collections;

// This script require the MeshCombineUtility.cs
public class MyPostProcesser2 : AssetPostprocessor
{
    // Apply this postprocessor early
    public override int GetPostprocessOrder()
    {
        return 0;
    }

	private static void LogWrite(string s)
	{
		using (FileStream stream = new FileStream("PostProcesserLog.txt", FileMode.Append, FileAccess.Write, FileShare.None))
		{
			using (StreamWriter writer = new StreamWriter(stream))
			{
				Console.WriteLine(s+"\n");
				writer.WriteLine(s+"\n");
			}
		}
	}
	
    public override void OnPostprocessModel(GameObject g)
    {
    	LogWrite("OnPostprocessModel " + assetPath);
    }
    

	public override void OnPreprocessModel()
	{
		LogWrite("OnPreprocessModel " + assetPath);
	}
	
    public override void OnPostprocessTexture(GameObject g)
    {
    	LogWrite("OnPostprocessTexture " + assetPath);
    }
    
	public override void OnPreprocessTexture()
	{
		LogWrite("OnPreprocessTexture " + assetPath);
	}
	
	
    public static void OnPostprocessAllAssets(string[] importedAssets, string[] deletedAssets, string[] movedAssets, string[] movedFromAssetPaths)
    {
		LogWrite("OnPostprocessAllAssets");
		LogWrite("\timportedAssets\n");
		foreach (string a in importedAssets)
		{
			LogWrite("\t\t" + a );
		}
		PerformBuild();
    }
    
	public static void PerformBuild()
	{
		string[] scenes = {"Assets/MyScene.unity"};
		EditorApplication.NewScene();
		AssetDatabase.ImportAsset(@"c:\temp\U3D\packages\mymodel.mb", ImportAssetOptions.Default);
		EditorApplication.SaveScene("Assets/MyScene.unity");
		AssetDatabase.SaveAssets();
		
		
	}
	

}

I forgot to mention that I ran it in batch mode ( as follow ) :

rem step 1
"C:\program files\Unity\Editor\Unity.exe" -quit -batchmode -compressTextures -createProject "c:\temp\U3D\autoproj3" -quit
rem step 2
mkdir c:\temp\U3D\autoproj3\Assets\Editor
rem step 3
copy c:\temp\U3D\packages\MyPostProcessor2.cs  c:\temp\U3D\autoproj3\Assets\Editor\MyPostProcessor2.cs
rem step 4
copy C:\Temp\U3D\packages\mymodel.mb  c:\temp\U3D\autoproj3\Assets\mymodel.mb
rem step 5
mkdir c:\temp\U3D\autoproj3\Assets\textures
rem step 6
copy C:\Temp\U3D\packages\*.psd  c:\temp\U3D\autoproj3\Assets\textures
rem step 7
copy C:\Temp\U3D\packages\*.tga  c:\temp\U3D\autoproj3\Assets\textures
rem step 8
"C:\program files\Unity\Editor\Unity.exe" -projectPath "c:\temp\U3D\autoproj3" -batchmode  -compressTextures -quit

I was hoping the last statement in the above batch can run my derived postprocessor. But it did not.

the result of my Assets folder is :
Assets\Editor*.cs
Assets\Materials*.mat
Assets\textures*.tga
Assets\textures*.psd
Assets\mymodel.mb

Please help.

helps will be much appreciated.