private void CopySingleCodeOperation(NotificationApplicationClone clone, Func <NotificationApplication, WasteCodeInfo> codeGetter, Action <NotificationApplication, WasteCodeInfo> codeSetMethod) { if (codeGetter(clone.Source) == null) { return; } codeSetMethod(clone.Destination, CreateCodeInfoCopy(codeGetter(clone.Source))); }
private void CopySingleCodeOperation(NotificationApplicationClone clone, Func<NotificationApplication, WasteCodeInfo> codeGetter, Action<NotificationApplication, WasteCodeInfo> codeSetMethod) { if (codeGetter(clone.Source) == null) { return; } codeSetMethod(clone.Destination, CreateCodeInfoCopy(codeGetter(clone.Source))); }
private void CopyCodesListOperation(NotificationApplicationClone clone, Func <NotificationApplication, IEnumerable <WasteCodeInfo> > codesGetter, Action <NotificationApplication, IEnumerable <WasteCodeInfo> > codesSetter) { if (codesGetter(clone.Source) == null || !codesGetter(clone.Source).Any()) { return; } codesSetter(clone.Destination, codesGetter(clone.Source).Select(CreateCodeInfoCopy)); }
private void CopyCodesListOperation(NotificationApplicationClone clone, Func<NotificationApplication, IEnumerable<WasteCodeInfo>> codesGetter, Action<NotificationApplication, IEnumerable<WasteCodeInfo>> codesSetter) { if (codesGetter(clone.Source) == null || !codesGetter(clone.Source).Any()) { return; } codesSetter(clone.Destination, codesGetter(clone.Source).Select(CreateCodeInfoCopy)); }
public void CopyWasteCodes(NotificationApplication source, NotificationApplication destination) { var clone = new NotificationApplicationClone(source, destination); CopyBaselOecdCode(clone); CopyCustomsCode(clone); CopyExportCode(clone); CopyImportCode(clone); CopyOtherCode(clone); CopyEwcCodes(clone); CopyUnClasses(clone); CopyUnNumbers(clone); CopyYCodes(clone); CopyHCodes(clone); }
private void CopyUnClasses(NotificationApplicationClone clone) { CopyCodesListOperation(clone, na => na.UnClasses, (na, wcs) => na.SetUnClasses(wcs)); }
private void CopyOtherCode(NotificationApplicationClone clone) { CopySingleCodeOperation(clone, na => na.OtherCode, (na, wc) => na.SetOtherCode(wc)); }
private void CopyCustomsCode(NotificationApplicationClone clone) { CopySingleCodeOperation(clone, na => na.CustomsCode, (na, wc) => na.SetCustomsCode(wc)); }
private void CopyImportCode(NotificationApplicationClone clone) { CopySingleCodeOperation(clone, na => na.ImportCode, (na, wc) => na.SetImportCode(wc)); }
private void CopyBaselOecdCode(NotificationApplicationClone clone) { CopySingleCodeOperation(clone, na => na.BaselOecdCode, (na, wc) => na.SetBaselOecdCode(wc)); }