IAssistContext context= new AssistContext(JavaModelUtil.toWorkingCopy(cu),  location.getOffset(), location.getLength());
IInvocationContext context= new AssistContext(JavaModelUtil.toWorkingCopy(cu),  location.getOffset(), location.getLength());
	public IMarkerResolution[] getResolutions(IMarker marker) {		if (!hasResolutions(marker)) {			return NO_RESOLUTIONS; 		}				try {			ICompilationUnit cu= getCompilationUnit(marker);			if (cu != null) {				IEditorInput input= EditorUtility.getEditorInput(cu);				if (input != null) {					IProblemLocation location= findProblemLocation(input, marker);					if (location != null) {												IAssistContext context= new AssistContext(JavaModelUtil.toWorkingCopy(cu),  location.getOffset(), location.getLength());						ArrayList proposals= new ArrayList();						JavaCorrectionProcessor.collectCorrections(context, new IProblemLocation[] { location }, proposals);						int nProposals= proposals.size();						IMarkerResolution[] resolutions= new IMarkerResolution[nProposals];						for (int i= 0; i < nProposals; i++) {							resolutions[i]= new CorrectionMarkerResolution(context.getCompilationUnit(), location.getOffset(), location.getLength(), (IJavaCompletionProposal) proposals.get(i));						}						return resolutions;					}				}			}		} catch (JavaModelException e) {			JavaPlugin.log(e);		}		return new IMarkerResolution[0]; 	}