22<#@ template debug="true" hostspecific="true" language="C#" #>
33<#@ output extension="\\" #>
44<#
5- CustomT4Host host = (CustomT4Host) Host;
6- OdcmModel model = host.CurrentModel;
7- CodeWriterPHP writer = (CodeWriterPHP) host.CodeWriter;
8- OdcmClass entity = host.CurrentType.AsOdcmClass();
5+ CustomT4Host host = (CustomT4Host) Host;
6+ OdcmModel model = host.CurrentModel;
7+ CodeWriterPHP writer = (CodeWriterPHP) host.CodeWriter;
8+ OdcmClass entity = host.CurrentType.AsOdcmClass();
99TemplateWriterSettings settings = ConfigurationService.Settings;
10-
10+ String entityName = entity.Name.SanitizeEntityName();
11+ String entityBaseName = "";
12+ if (entity.Base != null)
13+ entityBaseName = entity.Base.Name.SanitizeEntityName();
1114#>
12- <#=writer.WriteHeader(writer.GetDocBlock(entity.Name .ToCheckedCase()))#>
15+ <#=writer.WriteHeader(writer.GetDocBlock(entityName .ToCheckedCase()))#>
1316namespace Microsoft\Graph\Model;
1417
15- <#=writer.GetClassBlock(entity.Name .ToCheckedCase().ToString(), "Model")#>
18+ <#=writer.GetClassBlock(entityName .ToCheckedCase().ToString(), "Model")#>
1619<#
1720if (entity.Name.ToCheckedCase() == "Entity") {
1821#>
1922class <#=entity.Name.ToCheckedCase()#> implements \JsonSerializable
2023<#
2124} else {
2225#>
23- class <#=entity.Name. ToCheckedCase()#> extends <#=entity.Base.Name .ToCheckedCase() #>
26+ class <#=entityName. ToCheckedCase()#> extends <#=entityBaseName .ToCheckedCase() #>
2427<#
2528}
2629#>
@@ -59,22 +62,21 @@ if (entity.Name.ToCheckedCase() == "Entity") {
5962<#
6063}
6164foreach(var property in entity.Properties.Where(prop => prop.Type.GetTypeString() != "bytes")){
62- var propertyName = property.Name.ToUnderscore();
63- var propertyNameCap = property.Name.ToUpperFirstChar();
65+ String propertyName = property.Name.SanitizePropertyName(entityName).ToCamelize();
6466 if (property.Type.IsComplex()) {
6567 if (property.IsCollection()) {
6668#>
6769
6870 /**
69- * Gets the <#=property.Name #>
71+ * Gets the <#=propertyName #>
7072<# if (property.LongDescription != null) {
7173#>
7274 * <#=property.LongDescription#>
7375<# } #>
7476 *
75- * @return array The <#=property.Name #>
77+ * @return array The <#=propertyName #>
7678 */
77- public function get<#=property.Name .ToCheckedCase()#>()
79+ public function get<#=propertyName .ToCheckedCase()#>()
7880 {
7981 if (array_key_exists("<#=property.Name.ToCamelize()#>", $this->_propDict)) {
8082 return $this->_propDict["<#=property.Name.ToCamelize()#>"];
@@ -84,17 +86,17 @@ foreach(var property in entity.Properties.Where(prop => prop.Type.GetTypeString(
8486 }
8587
8688 /**
87- * Sets the <#=property.Name #>
89+ * Sets the <#=propertyName #>
8890<# if (property.LongDescription != null) {
8991#>
9092 * <#=property.LongDescription#>
9193<# } #>
9294 *
93- * @param string $val The <#=property.Name #>
95+ * @param string $val The <#=propertyName #>
9496 *
9597 * @return <#=entity.Name.ToCheckedCase()#>
9698 */
97- public function set<#=property.Name .ToCheckedCase()#>($val)
99+ public function set<#=propertyName .ToCheckedCase()#>($val)
98100 {
99101 $this->_propDict["<#=property.Name.ToCamelize()#>"] = $val;
100102 return $this;
@@ -104,15 +106,15 @@ foreach(var property in entity.Properties.Where(prop => prop.Type.GetTypeString(
104106 } else {
105107#>
106108 /**
107- * Gets the <#=property.Name #>
109+ * Gets the <#=propertyName #>
108110<# if (property.LongDescription != null) {
109111#>
110112 * <#=property.LongDescription#>
111113<# } #>
112114 *
113- * @return <#=property.Type.GetTypeString()#> The <#=property.Name #>
115+ * @return <#=property.Type.GetTypeString().SanitizeEntityName().ToCheckedCase() #> The <#=propertyName #>
114116 */
115- public function get<#=property.Name .ToCheckedCase()#>()
117+ public function get<#=propertyName .ToCheckedCase()#>()
116118 {
117119 if (array_key_exists("<#=property.Name.ToCamelize()#>", $this->_propDict)) {
118120 if (is_a($this->_propDict["<#=property.Name.ToCamelize()#>"], "Microsoft\Graph\Model\<#=property.Type.GetTypeString()#>")) {
@@ -122,7 +124,7 @@ foreach(var property in entity.Properties.Where(prop => prop.Type.GetTypeString(
122124 $this->_propDict["<#=property.Name.ToCamelize()#>"] = \GuzzleHttp\Psr7\stream_for($this->_propDict["<#=property.Name.ToCamelize()#>"]);
123125 return $this->_propDict["<#=property.Name.ToCamelize()#>"];
124126<# } else { #>
125- $this->_propDict["<#=property.Name.ToCamelize()#>"] = new <#=property.Type.GetTypeString()#>($this->_propDict["<#=property.Name.ToCamelize()#>"]);
127+ $this->_propDict["<#=property.Name.ToCamelize()#>"] = new <#=property.Type.GetTypeString().SanitizeEntityName().ToCheckedCase() #>($this->_propDict["<#=property.Name.ToCamelize()#>"]);
126128 return $this->_propDict["<#=property.Name.ToCamelize()#>"];
127129<# } #>
128130 }
@@ -131,17 +133,17 @@ foreach(var property in entity.Properties.Where(prop => prop.Type.GetTypeString(
131133 }
132134
133135 /**
134- * Sets the <#=property.Name #>
136+ * Sets the <#=propertyName #>
135137<# if (property.LongDescription != null) {
136138#>
137139 * <#=property.LongDescription#>
138140<# } #>
139141 *
140- * @param string $val The <#=property.Name #>
142+ * @param string $val The <#=propertyName #>
141143 *
142144 * @return <#=entity.Name.ToCheckedCase()#>
143145 */
144- public function set<#=property.Name .ToCheckedCase()#>($val)
146+ public function set<#=propertyName .ToCheckedCase()#>($val)
145147 {
146148<# if (property.Type.GetTypeString() == "bool") { #>
147149 $this->_propDict["<#=property.Name.ToCamelize()#>"] = boolval($val);
@@ -158,15 +160,15 @@ foreach(var property in entity.Properties.Where(prop => prop.Type.GetTypeString(
158160 } else {
159161#>
160162 /**
161- * Gets the <#=property.Name #>
163+ * Gets the <#=propertyName #>
162164<# if (property.LongDescription != null) {
163165#>
164166 * <#=property.LongDescription#>
165167<# } #>
166168 *
167- * @return <#=property.Type.GetTypeString()#> The <#=property.Name #>
169+ * @return <#=property.Type.GetTypeString()#> The <#=propertyName #>
168170 */
169- public function get<#=property.Name .ToCheckedCase()#>()
171+ public function get<#=propertyName .ToCheckedCase()#>()
170172 {
171173 if (array_key_exists("<#=property.Name.ToCamelize()#>", $this->_propDict)) {
172174<#
@@ -186,17 +188,17 @@ foreach(var property in entity.Properties.Where(prop => prop.Type.GetTypeString(
186188 }
187189
188190 /**
189- * Sets the <#=property.Name #>
191+ * Sets the <#=propertyName #>
190192<# if (property.LongDescription != null) {
191193#>
192194 * <#=property.LongDescription#>
193195<# } #>
194196 *
195- * @param <#=property.Type.GetTypeString()#> $val The <#=property.Name #>
197+ * @param <#=property.Type.GetTypeString()#> $val The <#=propertyName #>
196198 *
197199 * @return <#=entity.Name.ToCheckedCase()#>
198200 */
199- public function set<#=property.Name .ToCheckedCase()#>($val)
201+ public function set<#=propertyName .ToCheckedCase()#>($val)
200202 {
201203<#
202204 if (property.Type.GetTypeString() == "\\DateTime") {
0 commit comments