32 |
32 |
33 // CONSTANTS |
33 // CONSTANTS |
34 |
34 |
35 CMMAEMCResolver* CMMAEMCResolver::NewLC() |
35 CMMAEMCResolver* CMMAEMCResolver::NewLC() |
36 { |
36 { |
37 DEBUG("MMA:CMMAEMCResolver :: NewLC ++"); |
37 DEBUG("MMA:CMMAEMCResolver :: NewLC +"); |
38 CMMAEMCResolver* self = new(ELeave)CMMAEMCResolver(); |
38 CMMAEMCResolver* self = new(ELeave)CMMAEMCResolver(); |
39 CleanupStack::PushL(self); |
39 CleanupStack::PushL(self); |
40 DEBUG("MMA:CMMAEMCResolver :: NewLC --"); |
40 self->ConstructL(); |
|
41 DEBUG("MMA:CMMAEMCResolver :: NewLC -"); |
41 return self; |
42 return self; |
42 } |
43 } |
43 |
44 |
|
45 void CMMAEMCResolver::ConstructL() |
|
46 { |
|
47 iContentType = HBufC::NewL(KContentTypeMaxLength); |
|
48 iMimeType = HBufC8::NewL(KContentTypeMaxLength); |
|
49 } |
|
50 |
44 CMMAEMCResolver::~CMMAEMCResolver() |
51 CMMAEMCResolver::~CMMAEMCResolver() |
45 { |
52 { |
46 delete iContentType; |
53 delete iContentType; |
47 |
54 |
48 delete iFileName; |
55 delete iFileName; |
50 delete iMimeType; |
57 delete iMimeType; |
51 } |
58 } |
52 |
59 |
53 HBufC* CMMAEMCResolver::ContentTypeOwnership() |
60 HBufC* CMMAEMCResolver::ContentTypeOwnership() |
54 { |
61 { |
55 DEBUG("MMA:CMMAEMCResolver :: ContentTypeOwnership ++"); |
62 DEBUG("MMA:CMMAEMCResolver :: ContentTypeOwnership +"); |
56 HBufC* ct = iContentType; |
63 HBufC* ct = iContentType; |
57 iContentType = NULL; |
64 iContentType = NULL; |
58 DEBUG("MMA:CMMAEMCResolver :: ContentTypeOwnership --"); |
65 DEBUG("MMA:CMMAEMCResolver :: ContentTypeOwnership -"); |
59 return ct; |
66 return ct; |
60 } |
67 } |
61 |
68 |
62 HBufC8* CMMAEMCResolver::MimeTypeOwnership() |
69 HBufC8* CMMAEMCResolver::MimeTypeOwnership() |
63 { |
70 { |
64 DEBUG("MMA:CMMAEMCResolver :: MimeTypeOwnership ++"); |
71 DEBUG("MMA:CMMAEMCResolver :: MimeTypeOwnership +"); |
65 HBufC8* mt = iMimeType; |
72 HBufC8* mt = iMimeType; |
66 iMimeType = NULL; |
73 iMimeType = NULL; |
67 DEBUG("MMA:CMMAEMCResolver :: MimeTypeOwnership --"); |
74 DEBUG("MMA:CMMAEMCResolver :: MimeTypeOwnership -"); |
68 return mt; |
75 return mt; |
69 } |
76 } |
70 |
77 |
71 HBufC* CMMAEMCResolver::ContentType() |
78 HBufC* CMMAEMCResolver::ContentType() |
72 { |
79 { |
73 return iContentType; |
80 return iContentType; |
74 } |
81 } |
75 |
82 |
76 void CMMAEMCResolver::SetFileNameL(const TDesC* aFileName) |
83 void CMMAEMCResolver::SetFileNameL(const TDesC* aFileName) |
77 { |
84 { |
78 DEBUG("MMA:CMMAEMCResolver :: SetFileNameL ++"); |
85 DEBUG("MMA:CMMAEMCResolver :: SetFileNameL +"); |
79 HBufC* fn = NULL; |
86 HBufC* fn = NULL; |
80 if (aFileName) |
87 if (aFileName) |
81 { |
88 { |
82 fn = aFileName->AllocL(); |
89 fn = aFileName->AllocL(); |
83 } |
90 } |
84 delete iFileName; |
91 delete iFileName; |
85 iFileName = fn; |
92 iFileName = fn; |
86 DEBUG("MMA:CMMAEMCResolver :: SetFileNameL --"); |
93 DEBUG("MMA:CMMAEMCResolver :: SetFileNameL -"); |
87 } |
94 } |
88 |
95 |
89 HBufC* CMMAEMCResolver::FileNameOwnership() |
96 HBufC* CMMAEMCResolver::FileNameOwnership() |
90 { |
97 { |
91 DEBUG("MMA:CMMAEMCResolver :: FileNameOwnership ++"); |
98 DEBUG("MMA:CMMAEMCResolver :: FileNameOwnership +"); |
92 HBufC* fn = iFileName; |
99 HBufC* fn = iFileName; |
93 iFileName = NULL; |
100 iFileName = NULL; |
94 DEBUG("MMA:CMMAEMCResolver :: FileNameOwnership --"); |
101 DEBUG("MMA:CMMAEMCResolver :: FileNameOwnership -"); |
95 return fn; |
102 return fn; |
96 } |
103 } |
97 |
104 |
98 void CMMAEMCResolver::SetMimeTypeL(const TDesC* aFileName) |
|
99 { |
|
100 DEBUG("MMA:CMMAEMCResolver :: SetMimeTypeL +"); |
|
101 if (iContentType) |
|
102 { |
|
103 delete iContentType; |
|
104 iContentType = NULL; |
|
105 } |
|
106 iContentType = HBufC::NewL(KContentTypeMaxLength); |
|
107 TBuf8<KContentTypeMaxLength> mimeType; |
|
108 ResolveContentTypeL(*aFileName,mimeType); |
|
109 iContentType->Des().Copy(mimeType); |
|
110 iMimeType = HBufC8::NewL(mimeType.Length()); //8 bit Descriptor of iContentType |
|
111 iMimeType->Des().Copy(mimeType); |
|
112 |
|
113 DEBUG("MMA:CMMAEMCResolver :: SetMimeTypeL -"); |
|
114 } |
|
115 |
|
116 void CMMAEMCResolver::ResolveContentTypeL() |
105 void CMMAEMCResolver::ResolveContentTypeL() |
117 { |
106 { |
118 DEBUG("MMA:CMMAEMCResolver::ResolveContentTypeL +"); |
107 DEBUG("MMA:CMMAEMCResolver::ResolveContentTypeL +"); |
119 |
|
120 if (iContentType) |
|
121 { |
|
122 delete iContentType; |
|
123 iContentType = NULL; |
|
124 } |
|
125 if (iMimeType) |
|
126 { |
|
127 delete iMimeType; |
|
128 iMimeType = NULL; |
|
129 } |
|
130 |
|
131 iContentType = HBufC::NewL(KContentTypeMaxLength); |
|
132 iMimeType = HBufC8::NewL(KContentTypeMaxLength); |
|
133 |
108 |
134 if (iFileName->Right(4).Compare(KAacFileExtension()) == 0) |
109 if (iFileName->Right(4).Compare(KAacFileExtension()) == 0) |
135 { |
110 { |
136 iContentType->Des().Copy(KMimetypeAAC); |
111 iContentType->Des().Copy(KMimetypeAAC); |
137 iMimeType->Des().Copy(KMimetypeAAC); |
112 iMimeType->Des().Copy(KMimetypeAAC); |
247 tempBuf.Copy(KMimetypeRM); |
222 tempBuf.Copy(KMimetypeRM); |
248 aMimeTypeArray.AppendL(tempBuf); |
223 aMimeTypeArray.AppendL(tempBuf); |
249 DEBUG("MMA:CMMAEMCResolver :: GetSupportedContentTypesL -"); |
224 DEBUG("MMA:CMMAEMCResolver :: GetSupportedContentTypesL -"); |
250 } |
225 } |
251 |
226 |
252 // EMC - II |
|
253 void CMMAEMCResolver::SetSourceInfoL(const HBufC8* aHeaderData) |
227 void CMMAEMCResolver::SetSourceInfoL(const HBufC8* aHeaderData) |
254 { |
228 { |
255 iHeaderData = aHeaderData; |
229 iHeaderData = aHeaderData; |
256 ResolveContentTypeL(); |
230 ResolveContentTypeL(); |
257 } |
231 } |