OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 #include "bin/file.h" | 5 #include "bin/file.h" |
6 | 6 |
7 #include "bin/builtin.h" | 7 #include "bin/builtin.h" |
8 #include "bin/dartutils.h" | 8 #include "bin/dartutils.h" |
9 #include "bin/io_buffer.h" | 9 #include "bin/io_buffer.h" |
10 #include "bin/thread.h" | 10 #include "bin/thread.h" |
(...skipping 331 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
342 Dart_SetReturnValue(args, Dart_NewInteger(return_value)); | 342 Dart_SetReturnValue(args, Dart_NewInteger(return_value)); |
343 } else { | 343 } else { |
344 Dart_Handle err = DartUtils::NewDartOSError(); | 344 Dart_Handle err = DartUtils::NewDartOSError(); |
345 if (Dart_IsError(err)) Dart_PropagateError(err); | 345 if (Dart_IsError(err)) Dart_PropagateError(err); |
346 Dart_SetReturnValue(args, err); | 346 Dart_SetReturnValue(args, err); |
347 } | 347 } |
348 Dart_ExitScope(); | 348 Dart_ExitScope(); |
349 } | 349 } |
350 | 350 |
351 | 351 |
352 void FUNCTION_NAME(File_LengthFromName)(Dart_NativeArguments args) { | 352 void FUNCTION_NAME(File_LengthFromPath)(Dart_NativeArguments args) { |
353 Dart_EnterScope(); | 353 Dart_EnterScope(); |
354 const char* name = | 354 const char* path = |
355 DartUtils::GetStringValue(Dart_GetNativeArgument(args, 0)); | 355 DartUtils::GetStringValue(Dart_GetNativeArgument(args, 0)); |
356 intptr_t return_value = File::LengthFromName(name); | 356 intptr_t return_value = File::LengthFromPath(path); |
357 if (return_value >= 0) { | 357 if (return_value >= 0) { |
358 Dart_SetReturnValue(args, Dart_NewInteger(return_value)); | 358 Dart_SetReturnValue(args, Dart_NewInteger(return_value)); |
359 } else { | 359 } else { |
360 Dart_Handle err = DartUtils::NewDartOSError(); | 360 Dart_Handle err = DartUtils::NewDartOSError(); |
361 if (Dart_IsError(err)) Dart_PropagateError(err); | 361 if (Dart_IsError(err)) Dart_PropagateError(err); |
362 Dart_SetReturnValue(args, err); | 362 Dart_SetReturnValue(args, err); |
363 } | 363 } |
364 Dart_ExitScope(); | 364 Dart_ExitScope(); |
365 } | 365 } |
366 | 366 |
(...skipping 315 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
682 return CObject::NewOSError(); | 682 return CObject::NewOSError(); |
683 } | 683 } |
684 } else { | 684 } else { |
685 return CObject::FileClosedError(); | 685 return CObject::FileClosedError(); |
686 } | 686 } |
687 } | 687 } |
688 return CObject::IllegalArgumentError(); | 688 return CObject::IllegalArgumentError(); |
689 } | 689 } |
690 | 690 |
691 | 691 |
692 static CObject* FileLengthFromNameRequest(const CObjectArray& request) { | 692 static CObject* FileLengthFromPathRequest(const CObjectArray& request) { |
693 if (request.Length() == 2 && request[1]->IsString()) { | 693 if (request.Length() == 2 && request[1]->IsString()) { |
694 CObjectString filename(request[1]); | 694 CObjectString filepath(request[1]); |
695 intptr_t return_value = File::LengthFromName(filename.CString()); | 695 intptr_t return_value = File::LengthFromPath(filepath.CString()); |
696 if (return_value >= 0) { | 696 if (return_value >= 0) { |
697 return new CObjectIntptr(CObject::NewIntptr(return_value)); | 697 return new CObjectIntptr(CObject::NewIntptr(return_value)); |
698 } else { | 698 } else { |
699 return CObject::NewOSError(); | 699 return CObject::NewOSError(); |
700 } | 700 } |
701 } | 701 } |
702 return CObject::IllegalArgumentError(); | 702 return CObject::IllegalArgumentError(); |
703 } | 703 } |
704 | 704 |
705 | 705 |
706 static CObject* FileLastModifiedRequest(const CObjectArray& request) { | 706 static CObject* FileLastModifiedRequest(const CObjectArray& request) { |
707 if (request.Length() == 2 && request[1]->IsString()) { | 707 if (request.Length() == 2 && request[1]->IsString()) { |
708 CObjectString filename(request[1]); | 708 CObjectString filepath(request[1]); |
709 int64_t return_value = File::LastModified(filename.CString()); | 709 int64_t return_value = File::LastModified(filepath.CString()); |
710 if (return_value >= 0) { | 710 if (return_value >= 0) { |
711 return new CObjectIntptr(CObject::NewInt64(return_value * kMSPerSecond)); | 711 return new CObjectIntptr(CObject::NewInt64(return_value * kMSPerSecond)); |
712 } else { | 712 } else { |
713 return CObject::NewOSError(); | 713 return CObject::NewOSError(); |
714 } | 714 } |
715 } | 715 } |
716 return CObject::IllegalArgumentError(); | 716 return CObject::IllegalArgumentError(); |
717 } | 717 } |
718 | 718 |
719 | 719 |
(...skipping 206 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
926 break; | 926 break; |
927 case File::kSetPositionRequest: | 927 case File::kSetPositionRequest: |
928 response = FileSetPositionRequest(request); | 928 response = FileSetPositionRequest(request); |
929 break; | 929 break; |
930 case File::kTruncateRequest: | 930 case File::kTruncateRequest: |
931 response = FileTruncateRequest(request); | 931 response = FileTruncateRequest(request); |
932 break; | 932 break; |
933 case File::kLengthRequest: | 933 case File::kLengthRequest: |
934 response = FileLengthRequest(request); | 934 response = FileLengthRequest(request); |
935 break; | 935 break; |
936 case File::kLengthFromNameRequest: | 936 case File::kLengthFromPathRequest: |
937 response = FileLengthFromNameRequest(request); | 937 response = FileLengthFromPathRequest(request); |
938 break; | 938 break; |
939 case File::kLastModifiedRequest: | 939 case File::kLastModifiedRequest: |
940 response = FileLastModifiedRequest(request); | 940 response = FileLastModifiedRequest(request); |
941 break; | 941 break; |
942 case File::kFlushRequest: | 942 case File::kFlushRequest: |
943 response = FileFlushRequest(request); | 943 response = FileFlushRequest(request); |
944 break; | 944 break; |
945 case File::kReadByteRequest: | 945 case File::kReadByteRequest: |
946 response = FileReadByteRequest(request); | 946 response = FileReadByteRequest(request); |
947 break; | 947 break; |
(...skipping 28 matching lines...) Expand all Loading... |
976 Dart_EnterScope(); | 976 Dart_EnterScope(); |
977 Dart_SetReturnValue(args, Dart_Null()); | 977 Dart_SetReturnValue(args, Dart_Null()); |
978 Dart_Port service_port = File::GetServicePort(); | 978 Dart_Port service_port = File::GetServicePort(); |
979 if (service_port != ILLEGAL_PORT) { | 979 if (service_port != ILLEGAL_PORT) { |
980 // Return a send port for the service port. | 980 // Return a send port for the service port. |
981 Dart_Handle send_port = Dart_NewSendPort(service_port); | 981 Dart_Handle send_port = Dart_NewSendPort(service_port); |
982 Dart_SetReturnValue(args, send_port); | 982 Dart_SetReturnValue(args, send_port); |
983 } | 983 } |
984 Dart_ExitScope(); | 984 Dart_ExitScope(); |
985 } | 985 } |
OLD | NEW |